JP5112416B2 - 用語抽出装置、方法及び用語辞書のデータ構造 - Google Patents

用語抽出装置、方法及び用語辞書のデータ構造 Download PDF

Info

Publication number
JP5112416B2
JP5112416B2 JP2009298532A JP2009298532A JP5112416B2 JP 5112416 B2 JP5112416 B2 JP 5112416B2 JP 2009298532 A JP2009298532 A JP 2009298532A JP 2009298532 A JP2009298532 A JP 2009298532A JP 5112416 B2 JP5112416 B2 JP 5112416B2
Authority
JP
Japan
Prior art keywords
character string
term
index
matches
target
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.)
Active
Application number
JP2009298532A
Other languages
English (en)
Other versions
JP2011138365A (ja
Inventor
茂 竹内
真大 日吉
吉克 舩坂
宜成 河
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2009298532A priority Critical patent/JP5112416B2/ja
Publication of JP2011138365A publication Critical patent/JP2011138365A/ja
Application granted granted Critical
Publication of JP5112416B2 publication Critical patent/JP5112416B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、用語抽出装置、方法及び用語辞書のデータ構造に関する。
従来、文書に含まれる用語を検索するシステムとして、インデックスを用いた用語検索支援システムが開示されている(例えば、特許文献1)。特許文献1に記載の用語検索支援システムは、インデックスを作成するのにファイル(文書)に含まれる掲載文字列を形態素解析して掲載用語を抽出した上で、索引用語を保存している。
他方、インターネット上には、様々なWebページが存在しているが、そのWebページの文書には、例えば、誹謗中傷がされたものや卑猥な言葉が書かれたもの等も存在する。このような一般に公開することが相応しくないWebページを探して、そのようなWebページを非公開にしたいというニーズが存在する。
特開2005−182408号公報
特許文献1に記載の用語検索支援システムは、形態素解析を用いるものであるが、形態素解析は、システム負荷がかかる処理である。また、索引用語は、検索文字列を入力した際に一致を見るために、用語(文字列)単位に保存されており、文書全体のうち誹謗中傷や卑猥な言葉等の特定の複数の用語を検索するのには改善の余地がある。
本発明は、特定の複数の用語の抽出を高速に行いつつシステム負荷を軽減できる用語抽出装置、方法及び用語辞書のデータ構造を提供することを目的とする。
本発明者らは、用語の辞書として、用語の先頭から所定バイト以上の所定数の先頭文字列と、用語の文字列長とを対応付けてインデックスとして記憶する方法を見出し、本発明を完成するに至った。本発明は、具体的には次のようなものを提供する。
(1) 用語の先頭から所定バイト以上の所定数の文字列によって構成された先頭文字列と、前記用語の文字列長とを対応付けてインデックスとして記憶するインデックス記憶手段と、
前記先頭文字列に対応する前記用語を前記インデックスが参照する実データとして記憶する用語記憶手段と、
対象文書から前記所定数の文字数分の連続した文字列を読み込んで、前記インデックス記憶手段に記憶された前記先頭文字列に一致する前記対象文書の中の文字列を検索するインデックス検索手段と、
前記インデックス検索手段が検索した前記先頭文字列に一致する前記文字列について、前記インデックス記憶手段を参照して前記文字列に一致した前記先頭文字列に対応する前記文字列長の分の文字列を前記対象文書から読み込んで対象文字列を抽出し、前記用語記憶手段に記憶された前記用語に一致するか否かを判定する用語判定手段と、
前記用語判定手段により一致すると判定されたことに応じて、前記対象文字列を記憶する抽出用語記憶手段と、
を備える用語抽出装置。
本発明のこのような構成によれば、用語の辞書として、用語の先頭から所定バイト以上の所定数の先頭文字列と、用語の文字列長とを対応付けてインデックスとして記憶し、先頭文字列に対応する用語をインデックスが参照する実データとして記憶し、インデックスを用いて所定数の先頭文字列に一致する文字列を対象文書から検索することで、実データに記憶された用語を抽出できる。よって、所定数の先頭文字列に一致する文字列を先に検索して確認することにより、参照する実データの数を絞り込める場合には特にシステム負荷を抑制しつつ、特定の複数の用語を高速に抽出できる。
(2) 前記インデックス検索手段は、前記対象文書の先頭から前記所定数の文字数分の連続した文字列を1文字ずつ文末方向に移動させながら逐次読み込んで、前記インデックス記憶手段に記憶された前記先頭文字列に一致する前記対象文書の中の文字列を逐次検索し、
前記対象文書の文末に至るまで、前記インデックス検索手段による検索と、前記用語判定手段による判定と、前記抽出用語記憶手段による抽出された前記対象文字列の記憶とを繰り返す繰返し手段を備える、
(1)に記載の用語抽出装置。
本発明のこのような構成によれば、対象文書の先頭から所定数の文字数分の連続した文字列を1文字ずつ文末方向に移動させながら逐次読み込んで、先頭文字列に一致する対象文書の中の文字列を逐次検索して、文末に至るまで繰返すので、対象文書の全てを検索して、特定の複数の用語を抽出することができる。
(3) 前記用語記憶手段は、前記用語に対応した種類情報を記憶し、
前記用語判定手段により一致すると判定されたことに応じて、前記用語記憶手段を参照して前記対象文字列に対応する前記種類情報を抽出して記憶する抽出種類記憶手段を備える、
(1)又は(2)に記載の用語抽出装置。
本発明のこのような構成によれば、用語に対応した種類情報を記憶することで、一致した用語に対応する種類情報を抽出することができる。ここで、種類情報を、例えば、用語のジャンルとすることで、抽出して蓄積したジャンルから、対象文書の傾向を把握できる。
(4) 前記所定数の先頭文字列は、3バイト以上4バイト以下の文字列である、
(1)から(3)までのいずれかに記載の用語抽出装置。
本発明のこのような構成によれば、所定数の先頭文字列を3バイト又は4バイトの文字列とすることができる。よって、例えば、2バイト文字であれば2文字を先頭文字列にするので、例えば、一文字単位の場合と比較して処理対象が絞られるので、高速かつシステム負荷を抑制して特定の複数の用語の抽出を実現できる。
(5) コンピュータによって実行される用語抽出方法であって、
前記コンピュータが、用語の先頭から所定バイト以上の所定数の文字列によって構成された先頭文字列と、前記用語の文字列長とを対応付けてインデックスとして記憶するステップと、
前記コンピュータが、前記先頭文字列に対応する前記用語を前記インデックスが参照する実データとして記憶するステップと、
前記コンピュータが、対象文書から前記所定数の文字数分の連続した文字列を読み込んで、前記インデックスとして記憶された前記先頭文字列に一致する前記対象文書の中の文字列を検索するステップと、
前記コンピュータが、検索した前記先頭文字列に一致する前記文字列について、記憶された前記インデックスを参照して前記文字列に一致した前記先頭文字列に対応する前記文字列長の分の文字列を前記対象文書から読み込んで対象文字列を抽出し、前記実データとして記憶された前記用語に一致するか否かを判定するステップと、
前記コンピュータが、一致すると判定されたことに応じて、前記対象文字列を記憶するステップと、
を含む用語抽出方法。
(6) コンピュータ内の記憶手段に構成される用語辞書のデータ構造であって、
用語のうちの先頭の所定バイト以上の所定数の先頭文字列と、前記用語の文字列長とをインデックスとして記憶するインデックス記憶領域と、
前記インデックス記憶領域に記憶された前記先頭文字列及び対応する前記文字列長に対応する前記用語を前記インデックスが参照する実データとして記憶する用語記憶領域と、
を備える用語辞書のデータ構造であって、該用語辞書のデータ構造は、前記コンピュータによって実行される用語抽出方法によって用いられ、該用語抽出方法は、
前記コンピュータが、用語の先頭から所定バイト以上の所定数の文字列によって構成された先頭文字列と、前記用語の文字列長とを対応付けてインデックスとして記憶するステップと、
前記コンピュータが、前記先頭文字列に対応する前記用語を前記インデックスが参照する実データとして記憶するステップと、
前記コンピュータが、対象文書から前記所定数の文字数分の連続した文字列を読み込んで、前記インデックスとして記憶された前記先頭文字列に一致する前記対象文書の中の文字列を検索するステップと、
前記コンピュータが、検索した前記先頭文字列に一致する前記文字列について、記憶された前記インデックスを参照して前記文字列に一致した前記先頭文字列に対応する前記文字列長の分の文字列を前記対象文書から読み込んで対象文字列を抽出し、前記実データとして記憶された前記用語に一致するか否かを判定するステップと、
前記コンピュータが、一致すると判定されたことに応じて、前記対象文字列を記憶するステップと、
を含むことを特徴とする用語辞書のデータ構造
本発明によれば、用語の先頭から所定バイト以上の所定数の先頭文字列を比較することにより、複雑な処理を行わずにシステム負荷を抑制して特定の複数の用語を抽出できる。
本実施形態に係る用語抽出システムの全体構成及び用語抽出サーバの機能構成を示す図である。 本実施形態に係るインデックスDB及び用語DBの例を示す図である。 本実施形態に係る用語抽出サーバのメイン処理のフローチャートである。 本実施形態に係る例文を用いた説明のための図である。
以下、本発明を実施するための形態について、図を参照しながら説明する。なお、これは、あくまでも一例であって、本発明の技術的範囲はこれに限られるものではない。
(実施形態)
[用語抽出システム100の全体構成及び用語抽出サーバ1の機能構成]
図1は、本実施形態に係る用語抽出システム100の全体構成及び用語抽出サーバ1の機能構成を示す図である。図2は、本実施形態に係るインデックスDB21及び用語DB22の例を示す図である。
用語抽出システム100は、用語抽出サーバ1と、ブログサーバ3と、ユーザ端末5と、通信ネットワーク9とにより構成される。
用語抽出サーバ1は、例えば、ブログサーバ3に対して新たにブログの記事(対象文書)が投稿された場合や、既に存在するブログの記事が更新された場合に、ブログサーバ3から送信されたブログの記事を読み込んで、ブログの記事が用語DB(DB:データベース)に登録された用語を含んでいるか否かを判定して、ブログの記事に含まれる用語を抽出するサーバである。用語抽出サーバ1は、制御部10と、記憶部20とを備える。
制御部10は、対象文書読込手段11と、繰返し手段12とを備える。また、繰返し手段12は、インデックス検索手段13と、用語判定手段14と、抽出用語記憶手段15と、抽出種類記憶手段16とを備える。
対象文書読込手段11は、ブログサーバ3等の外部装置から処理対象になる対象文書を読み込む制御部である。対象文書とは、例えば、ブログの記事における文字列をいい、写真やイラスト等は除かれる。
繰返し手段12は、対象文書の先頭から所定数の連続した文字列を1文字ずつ文末方向に移動させながら逐次読み込んで、文末に至るまで、次に説明するインデックス検索手段13と、用語判定手段14と、抽出用語記憶手段15と、抽出種類記憶手段16とを繰り返す制御部である。
インデックス検索手段13は、インデックスDB21に記憶されたインデックスの先頭文字列に一致する文字列を、対象文書から検索する制御部である。
用語判定手段14は、インデックス検索手段13により検索された先頭文字列に対応する文字列長をインデックスDB21から抽出し、検索された文字列を含む文字列の長さ分を対象文字列として対象文書から抽出して、これが、インデックスDB21に対応する用語DB22の用語に一致するか否かを判定する制御部である。
ここで、記憶部20に記憶されたインデックスDB21について、用語DB22を用いつつ図2に基づき説明する。図2(a)に示すインデックスDB21は、対象になる用語の先頭文字列と用語の文字列長とを記憶するDBである。インデックスDB21は、そのDB内で1から順番に番号を付したNoの他、先頭文字列21aと、文字列長21bとからなる。
先頭文字列21aは、用語のうち3バイト以上4バイト以下の文字列(所定数の文字列)を格納する。図2(a)に示す例では、Noが「1」のレコードは、「アダ」という文字列を先頭文字列21aに格納する。「アダ」は、カタカナ文字であり、1文字が2バイト文字であるので、4バイトの文字列である。英字であれば、1文字が1バイトであるので、先頭文字列21aは、3文字を格納する。
文字列長21bは、用語の文字列の長さを格納する。図2(a)に示す例では、Noが「1」のレコードの「アダ」に対応する用語は、図2(b)に示す用語DB22のうちNoが「1」の「アダルトサイト」である。よって、文字列長21bは、2バイト文字が7文字であるので合計として14バイトを格納する。また、図2(a)のNoが「2」のレコードの「イタ」に対応する用語は、図2(b)に示す用語DB22のうちNoが「2」から「4」までの3つの用語である。よって、文字列長21bは、3つの用語の各々の文字列長を格納する。
図1に戻り、抽出用語記憶手段15は、用語判定手段14によって一致すると判定された対象文字列である用語を、抽出用語DB24に記憶する。抽出種類記憶手段16は、用語DB22の該当の用語に対応するジャンルを抽出種類DB25に記憶する。
ここで、用語DB22について、図2に基づき説明する。図2(b)に示す用語DB22は、インデックスDB21の先頭文字列21aに対応する用語と、その用語のジャンルとを記憶するDBである。用語DB22は、そのDB内で1から順番に番号を付したNoの他、用語22aと、ジャンル22bとからなる。
用語22aは、抽出対象の用語を格納する。ジャンル22bは、用語に対応するカテゴリを格納する。図2(b)に示す例では、Noが「1」のレコードは、用語22aには「アダルトサイト」という用語を格納し、ジャンル22bには「性的表現」という用語のカテゴリを格納する。
このように、用語抽出サーバ1は、3バイト以上4バイト以下の用語の先頭文字列と、用語の文字列長とを記憶したインデックスDB21と、先頭文字列に対応した用語と、用語のジャンルとを記憶した用語DB22とからなる新たな用語辞書を備えることができる。
記憶部20は、上述したインデックスDB21と、用語DB22の他、抽出用語DB24と、抽出種類DB25とを備える。
抽出用語DB24及び抽出種類DB25は、対象文書ごとに抽出された用語及びジャンルを記憶するDBである。
本実施形態の用語抽出サーバ1のハードウェアは、一般的なコンピュータによって構成してもよい。一般的なコンピュータは、例えば、制御部10として、中央処理装置(CPU)を備える他、記憶部20として、メモリ(RAM、ROM)、ハードディスク(HDD)及び光ディスク(CD、DVD等)を、ネットワーク通信装置として、各種有線及び無線LAN装置を、表示装置として、例えば、液晶ディスプレイ、プラズマディスプレイ等の各種ディスプレイを、入力装置として、例えば、キーボード及びポインティング・デバイス(マウス、トラッキングボール等)を適宜備え、これらはバスラインにより接続されている。このような一般的なコンピュータにおいて、CPUは、用語抽出サーバ1を統括的に制御し、各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。
ブログサーバ3は、複数のブログの記事を記憶したサーバであり、ブログの記事を記憶する記憶部と、ブログサーバ3の全体を制御する制御部とを備える。ブログサーバ3のハードウェアは、一般的なコンピュータによって構成してよい。
ユーザ端末5は、例えば、パーソナルコンピュータ(PC)や、携帯電話機等の携帯端末である。ユーザ端末5は、通信機能を有し、ブログの記事の更新等が可能な端末であれば、どのような装置でもよい。
なお、本実施形態では、用語抽出サーバ1と、ブログサーバ3とを別々の装置として説明しているが、用語抽出サーバ1がブログサーバ3の機能をも有して、1台のコンピュータによって実現してもよい。また、本実施形態では、用語抽出サーバ1は、ブログサーバ3から送信されたブログの記事を受け付けるものとしているが、送信元は、どの装置であっても構わない。
通信ネットワーク9は、用語抽出サーバ1と、ブログサーバ3と、ユーザ端末5との間で通信を行うための、例えば、インターネット等の通信回線である。通信ネットワーク9は、有線であってもよいし、その一部又は全部が無線であってもよい。
[用語抽出サーバ1の処理]
次に、用語抽出サーバ1での処理について説明する。図3は、本実施形態に係る用語抽出サーバ1のメイン処理のフローチャートである。
図3のS1:制御部10(対象文書読込手段11)は、ブログサーバ3から送信されたブログの記事を読み込む。
S2:制御部10は、定数n(nは整数)にブログの記事の総文字数を格納し、変数kに1を格納する。
S3:制御部10(インデックス検索手段13)は、ブログの記事のk番目の文字を含む2文字(1バイト文字の場合は3文字)をブログの記事から抽出する。
S4:制御部10(インデックス検索手段13)は、抽出した文字列が、インデックスDB21に記憶された先頭文字列21aに格納された先頭文字列のいずれかに一致するか否かを判断する。抽出した文字列に一致する先頭文字列がある場合(S4:YES)には、制御部10は、処理をS5に移す。抽出した文字列に一致する先頭文字列がない場合(S4:NO)には、制御部10は、処理をS9に移す。
S5:制御部10(インデックス検索手段13、用語判定手段14)は、一致した先頭文字列に対応する文字列長をインデックスDB21から抽出し、抽出した文字列長の文字列を対象文字列としてブログの記事から抽出する。ここで、先頭文字列に対応する文字列長が複数存在する場合(例えば、図2(a)のNoが「2」の場合)には、各々の文字列長に対応する文字列を対象文字列として抽出する。
S6:制御部10(用語判定手段14)は、対象文字列が先頭文字列21aの先頭文字列に対応する用語DB22の用語に一致するか否かを判断する。一致する場合(S6:YES)には、制御部10は、処理をS7に移す。他方、一致しない場合(S6:NO)には、制御部10は、処理をS9に移す。ここで、複数の対象文字列が抽出されている場合には、複数の対象文字列の各々についてS6の処理を行う。
S7:制御部10(抽出用語記憶手段15)は、一致した対象文字列を抽出用語DB24に記憶する。
S8:制御部10(抽出種類記憶手段16)は、一致した対象文字列に用語DB22で対応するジャンルを抽出種類DB25に記憶する。
S9:制御部10は、変数kに「1」を加算する。
S10:制御部10(繰返し手段12)は、変数kが定数n以上であるか否かを判定する。この処理は、対象のブログの記事を先頭から文末まで全てについて処理を行ったか否かを判定するものである。本処理の条件を満たす場合(S10:YES)には、制御部10は、本処理を終了する。他方、本処理の条件を満たさない場合(S10:NO)には、制御部10は、処理をS3に移し、ブログの記事の文末に至るまで、処理を繰返す。
このように、用語抽出サーバ1は、インデックスDB21と用語DB22とにより、インデックスDB21を用いて所定数の先頭文字列に一致する文字列をブログの記事から検索することで、用語DB22に記憶された用語を抽出できるので、所定数の先頭文字列に一致する文字列を先に検索して確認することにより、参照する実データの数を絞り込める場合には特にシステム負荷を抑制しつつ、特定の複数の用語を高速に抽出できる。
また、用語抽出サーバ1は、ブログの記事の先頭から3バイト又は4バイトの連続した文字列を1文字ずつ文末方向に移動させながら逐次読み込んで、先頭文字列に一致するブログの記事の中の文字列を逐次検索して、文末に至るまで繰返すので、ブログの記事の全てを検索して、特定の複数の用語を抽出することができる。
次に、上述したフローチャートを用いての具体例を説明する。図4は、本実施形態に係る例文を用いた説明のための図である。
この例では、「このアダルトサイト作った人イタいやつだよね。」との文書からなるブログの記事40を読み込む(図3のS1)。そして、定数nには、ブログの記事40の総文字数である「22」が格納される(図3のS2)。
最初は、変数kは「1」であり、ブログの記事は、全て2バイト文字であるので、1番目の文字を含む2文字として「この」の文字列が抽出される(図3のS3)。
文字列「この」は、インデックスDB21の先頭文字列21aの中には存在しないので(図3のS4でNOが選択)、変数kは、1加算されて「2」になる(図3のS9)。変数kの「2」は、定数nの「22」より小であるので(図3のS10でNOが選択)、今度は、2番目の文字を含む2文字として「のア」の文字列が抽出される(図3のS3)。
文字列「のア」も、インデックスDB21の先頭文字列21aの中には存在しないので(図3のS4でNOが選択)、変数kは「3」になり(図3のS9)、今度は、3番目の文字を含む2文字として「アダ」の文字列41が抽出される(図3のS3)。
「アダ」である文字列41は、図2(a)のインデックスDB21の先頭文字列21aの中に存在する(図3のS4でYESが選択)。よって、制御部10は、インデックスDB21の先頭文字列21aの「アダ」に対応する文字列長21bの「14」をインデックスDB21から抽出し、ブログの記事40から、「アダ」を先頭に含む「14」バイトの対象文字列42である「アダルトサイト」を抽出する(図3のS5)。
そして、対象文字列42が用語DB22の用語22aの「アダルトサイト」に一致するので(図3のS6でYESが選択)、対象文字列42を抽出用語DB24に記憶させる(図3のS7)。また、用語DB22の用語22aに対応するジャンル22bの内容である「性的表現」を、抽出種類DB25に記憶させる(図3のS8)。そして、今度は、4番目の文字を含む2文字として「ダル」の文字列が抽出される(図3のS3)。このように、制御部10は、ブログの記事40を文末に向かって1文字ずつ移動させながら逐次読み込んで、一連の処理を行っていく。
ここで、変数kが「14」の場合について説明する。14番目の文字を含む2文字として「イタ」の文字列43が抽出される(図3のS3)。「イタ」である文字列43は、図2(a)のインデックスDB21の先頭文字列21aの中に存在する(図3のS4でYESが選択)。よって、制御部10は、インデックスDB21の先頭文字列21aの「イタ」に対応する文字列長21bとして「8」、「10」、「12」の3つをインデックスDB21から抽出する。そして、ブログの記事40から「イタ」を先頭に含む「8」、「10」、「12」バイトの対象文字列44から46である「イタいや」、「イタいやつ」、「イタいやつだ」を抽出する(図3のS5)。
対象文字列44と対象文字列46とは、用語DB22の用語22aに存在しないが、対象文字列45は、用語DB22の用語22aの「イタいやつ」に一致するので(図3のS6でYESが選択)、対象文字列45を抽出用語DB24に記憶させる(図3のS7)。また、用語DB22の用語22aに対応するジャンル22bの内容である「誹謗中傷」を、抽出種類DB25に記憶させる(図3のS8)。
さらに、変数kが「21」の場合について説明する。21番目の文字を含む2文字として文字列「ね。」が抽出される(図3のS3)。文字列「ね。」は、インデックスDB21の先頭文字列21aの中には存在しないので(図3のS4でNOが選択)、変数kは「22」になり(図3のS9)、変数kと定数nとは共に「22」であるので、「k≧n」を満たし(図3のS10でYESが選択)、処理が終了する。
このように、用語抽出サーバ1は、用語DB22に、用語に対応したジャンルを記憶することで、一致した用語に対応するジャンルを抽出することができ、抽出して蓄積したジャンルから、ブログの記事の傾向を把握できる。
また、用語抽出サーバ1は、所定数の先頭文字列を3バイト又は4バイトの文字列とすることによって、例えば、2バイト文字であれば2文字を先頭文字列にするので、例えば、一文字単位の場合と比較して処理対象が絞られるので、高速かつシステム負荷を抑制して特定の複数の用語の抽出を実現できる。
なお、上述の実施形態においては、所定数の先頭文字列を3バイト又は4バイトの文字列とする場合について説明したが、対象文書のブログの記事等が1バイト文字であれば、所定数の文字列を1バイト又は2バイトの文字列とする場合の変形例も可能である。その場合には、用語抽出サーバ1は、それぞれ1文字又は2文字を先頭文字列にする。2文字を先頭文字列とする場合は、上述の実施形態と同様の効果が期待できる。さらに1文字を先頭文字列にする場合、一文字単位の場合と比べて、用語抽出サーバ1が参照するインデックスDB21の先頭文字の数は変わらないが、用語DB22については指定された文字列長のもののみを参照するので、その分の用語DB22の参照数が減少するので、システム負荷を抑制し、高速に処理することができる。また、対象文書のブログの記事等が2バイト文字であれば、所定数の文字列を2バイトの文字列とする場合の変形例が同様に可能である。
(変形形態)
本実施形態は、ユーザが投稿したブログの記事について説明したが、Webサイトの利用者によって制作され、生成されたコンテンツ(UGC:User−Generated Contents)であれば、例えば、電子掲示板(BBS)、プロフ、ソーシャルネットワーキングサービス(SNS)等どのようなものでも利用できる。
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
1 用語抽出サーバ
3 ブログサーバ
5 ユーザ端末
10 制御部
11 対象文書読込手段
12 繰返し手段
13 インデックス検索手段
14 用語判定手段
15 抽出用語記憶手段
16 抽出種類記憶手段
20 記憶部
21 インデックスDB
22 用語DB
24 抽出用語DB
25 抽出種類DB
40 記事
41,43 文字列
42,44,45,46 対象文字列

Claims (6)

  1. 用語の先頭から所定バイト以上の所定数の文字列によって構成された先頭文字列と、前記用語の文字列長とを対応付けてインデックスとして記憶するインデックス記憶手段と、
    前記先頭文字列に対応する前記用語を前記インデックスが参照する実データとして記憶する用語記憶手段と、
    対象文書から前記所定数の文字数分の連続した文字列を読み込んで、前記インデックス記憶手段に記憶された前記先頭文字列に一致する前記対象文書の中の文字列を検索するインデックス検索手段と、
    前記インデックス検索手段が検索した前記先頭文字列に一致する前記文字列について、前記インデックス記憶手段を参照して前記文字列に一致した前記先頭文字列に対応する前記文字列長の分の文字列を前記対象文書から読み込んで対象文字列を抽出し、前記用語記憶手段に記憶された前記用語に一致するか否かを判定する用語判定手段と、
    前記用語判定手段により一致すると判定されたことに応じて、前記対象文字列を記憶する抽出用語記憶手段と、
    を備える用語抽出装置。
  2. 前記インデックス検索手段は、前記対象文書の先頭から前記所定数の文字数分の連続した文字列を1文字ずつ文末方向に移動させながら逐次読み込んで、前記インデックス記憶手段に記憶された前記先頭文字列に一致する前記対象文書の中の文字列を逐次検索し、
    前記対象文書の文末に至るまで、前記インデックス検索手段による検索と、前記用語判定手段による判定と、前記抽出用語記憶手段による抽出された前記対象文字列の記憶とを繰り返す繰返し手段を備える、
    請求項1に記載の用語抽出装置。
  3. 前記用語記憶手段は、前記用語に対応した種類情報を記憶し、
    前記用語判定手段により一致すると判定されたことに応じて、前記用語記憶手段を参照して前記対象文字列に対応する前記種類情報を抽出して記憶する抽出種類記憶手段を備える、
    請求項1又は請求項2に記載の用語抽出装置。
  4. 前記所定数の先頭文字列は、3バイト以上4バイト以下の文字列である、
    請求項1から請求項3までのいずれかに記載の用語抽出装置。
  5. コンピュータによって実行される用語抽出方法であって、
    前記コンピュータが、用語の先頭から所定バイト以上の所定数の文字列によって構成された先頭文字列と、前記用語の文字列長とを対応付けてインデックスとして記憶するステップと、
    前記コンピュータが、前記先頭文字列に対応する前記用語を前記インデックスが参照する実データとして記憶するステップと、
    前記コンピュータが、対象文書から前記所定数の文字数分の連続した文字列を読み込んで、前記インデックスとして記憶された前記先頭文字列に一致する前記対象文書の中の文字列を検索するステップと、
    前記コンピュータが、検索した前記先頭文字列に一致する前記文字列について、記憶された前記インデックスを参照して前記文字列に一致した前記先頭文字列に対応する前記文字列長の分の文字列を前記対象文書から読み込んで対象文字列を抽出し、前記実データとして記憶された前記用語に一致するか否かを判定するステップと、
    前記コンピュータが、一致すると判定されたことに応じて、前記対象文字列を記憶するステップと、
    を含む用語抽出方法。
  6. コンピュータ内の記憶手段に構成される用語辞書のデータ構造であって、
    用語のうちの先頭の所定バイト以上の所定数の先頭文字列と、前記用語の文字列長とをインデックスとして記憶するインデックス記憶領域と、
    前記インデックス記憶領域に記憶された前記先頭文字列及び対応する前記文字列長に対応する前記用語を前記インデックスが参照する実データとして記憶する用語記憶領域と、
    を備える用語辞書のデータ構造であって、該用語辞書のデータ構造は、前記コンピュータによって実行される用語抽出方法によって用いられ、該用語抽出方法は、
    前記コンピュータが、用語の先頭から所定バイト以上の所定数の文字列によって構成された先頭文字列と、前記用語の文字列長とを対応付けてインデックスとして記憶するステップと、
    前記コンピュータが、前記先頭文字列に対応する前記用語を前記インデックスが参照する実データとして記憶するステップと、
    前記コンピュータが、対象文書から前記所定数の文字数分の連続した文字列を読み込んで、前記インデックスとして記憶された前記先頭文字列に一致する前記対象文書の中の文字列を検索するステップと、
    前記コンピュータが、検索した前記先頭文字列に一致する前記文字列について、記憶された前記インデックスを参照して前記文字列に一致した前記先頭文字列に対応する前記文字列長の分の文字列を前記対象文書から読み込んで対象文字列を抽出し、前記実データとして記憶された前記用語に一致するか否かを判定するステップと、
    前記コンピュータが、一致すると判定されたことに応じて、前記対象文字列を記憶するステップと、
    を含むことを特徴とする用語辞書のデータ構造
JP2009298532A 2009-12-28 2009-12-28 用語抽出装置、方法及び用語辞書のデータ構造 Active JP5112416B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009298532A JP5112416B2 (ja) 2009-12-28 2009-12-28 用語抽出装置、方法及び用語辞書のデータ構造

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009298532A JP5112416B2 (ja) 2009-12-28 2009-12-28 用語抽出装置、方法及び用語辞書のデータ構造

Publications (2)

Publication Number Publication Date
JP2011138365A JP2011138365A (ja) 2011-07-14
JP5112416B2 true JP5112416B2 (ja) 2013-01-09

Family

ID=44349725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009298532A Active JP5112416B2 (ja) 2009-12-28 2009-12-28 用語抽出装置、方法及び用語辞書のデータ構造

Country Status (1)

Country Link
JP (1) JP5112416B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6171476B2 (ja) * 2013-03-28 2017-08-02 富士通株式会社 ドキュメント作成支援装置,ドキュメント作成支援プログラム及びドキュメント作成支援方法
JP6592310B2 (ja) * 2015-09-01 2019-10-16 ルネサスエレクトロニクス株式会社 半導体装置
KR102227741B1 (ko) * 2019-06-05 2021-03-15 네이버 주식회사 타이틀 매칭 점수를 기반으로 한 장소 검색 방법 및 시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06162092A (ja) * 1992-11-18 1994-06-10 Fujitsu Ltd 情報検索装置
JP3338550B2 (ja) * 1994-04-12 2002-10-28 日本電信電話株式会社 内容抽出装置
JP3043596B2 (ja) * 1995-05-15 2000-05-22 松下電器産業株式会社 キーワード抽出装置
JP4510041B2 (ja) * 2007-03-06 2010-07-21 株式会社東芝 文書検索システム及びプログラム

Also Published As

Publication number Publication date
JP2011138365A (ja) 2011-07-14

Similar Documents

Publication Publication Date Title
US10002123B2 (en) Named entity extraction from a block of text
JP4861078B2 (ja) 索引作成プログラム、索引作成装置および索引作成方法
WO2009085664A2 (en) Relevancy sorting of users browser history
WO2014040521A1 (zh) 搜索方法、系统及存储介质
US20160224547A1 (en) Identifying similar documents using graphs
US20110219299A1 (en) Method and system of providing completion suggestion to a partial linguistic element
JP2013196358A (ja) 検索支援装置および検索支援方法
KR101606758B1 (ko) 연관 키워드를 이용한 이슈 데이터 추출방법 및 시스템
JP5112416B2 (ja) 用語抽出装置、方法及び用語辞書のデータ構造
JP5880350B2 (ja) 情報検索プログラム及び情報検索装置
JP2008059392A (ja) 辞書検索装置および辞書検索処理プログラム
US20160283597A1 (en) Fast substring fulltext search
JP6538563B2 (ja) 入力支援装置、入力支援方法及びプログラム
US10572592B2 (en) Method, device, and computer program for providing a definition or a translation of a word belonging to a sentence as a function of neighbouring words and of databases
JP2007279964A (ja) 情報検索装置
JP2007200252A (ja) 省略語生成・妥当性評価方法、同義語データベース生成・更新方法、省略語生成・妥当性評価装置、同義語データベース生成・更新装置、プログラム、記録媒体
US11150871B2 (en) Information density of documents
JP5094835B2 (ja) 意味属性推定装置、方法及びプログラム
JP2015125594A (ja) 情報処理装置、情報処理方法、プログラム
JP5676683B2 (ja) 発話文抽出装置、方法、及びプログラム
JP7441982B2 (ja) クエリ整形システム、クエリ整形方法、及びプログラム
JP7139271B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US20190205324A1 (en) Method and system for providing suggestions for completing user-query
WO2018135023A1 (ja) 情報処理システム、情報処理方法、およびコンピュータプログラム
JP2024034877A (ja) 入力データ作成支援装置、及び入力データ作成支援方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120312

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120724

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120821

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120911

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121010

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151019

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5112416

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350