文章体特定装置およびコンピュータに文章体を特定させるためのプログラム
【目的】検索条件に沿う文章体を見つけ出す。
【構成】複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無が検出される。検索キーワードの存在有無の検出に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数が算出される。同数の検索キーワード種類数を持つ文章体がグループ化され(ステップ52),同一グループに含まれる文章体が,各文章体に含まれる検索キーワードの重要度(網羅度フラグ)に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えられる(ステップ56,57)。検索キーワード種類数が大きい順に上記グループが並べられ,かつ一のグループ内においては上記グループ内並び替えに基づく順に文章体を並べられて,処理対象の複数の文章体のそれぞれに順位が付与される(ステップ58,59)。
【構成】複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無が検出される。検索キーワードの存在有無の検出に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数が算出される。同数の検索キーワード種類数を持つ文章体がグループ化され(ステップ52),同一グループに含まれる文章体が,各文章体に含まれる検索キーワードの重要度(網羅度フラグ)に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えられる(ステップ56,57)。検索キーワード種類数が大きい順に上記グループが並べられ,かつ一のグループ内においては上記グループ内並び替えに基づく順に文章体を並べられて,処理対象の複数の文章体のそれぞれに順位が付与される(ステップ58,59)。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は,文章体特定装置およびコンピュータに文章体を特定させるためのプログラムに関する。
【背景技術】
【0002】
WEB検索,企業内検索などでは,キーワード検索によって所望の文書等を検索することが行われている。文書検索の精度を高めるために,文書に関連するインデックスをあらかじめ作成しておいたり,検索フレーズに関連するフレーズを予測したりすることが行われている(特許文献1)。また,TF/IDF法に基づいて得られるスコアを,情報検索に用いるものもある(特許文献2)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−48685号公報
【特許文献2】木谷 強,外3名,”フルテキストと抽出キーワードを利用した情報検索”,情報処理学会研究報告,社団法人情報処理学会,1996年9月13日,第96巻,第88号,pp.71−76
【0004】
大量の文書の中からキーワード検索によって所望の文書を見つけ出す場合,検索キーワードを含む多数の文書がヒットすることがある。しかしながら,ヒットした文書が所望の文書であるとは必ずしも限らない。ヒットした多数の文書の内容を精査して,ヒットした多数の文書の中から所望の文書を見つけ出す作業が行われるのが一般的である。
【発明の開示】
【0005】
この発明は,検索キーワードを含むことのみならず,複数の検索キーワードをどの程度含むかに応じて,複数の文章体の中から複数の検索キーワードに合致する内容を持つ文章体を見つけ出すことを目的とする。
【0006】
この発明はまた,複数の文章体の中から,より重要な検索キーワードを含む文章体を見つけ出すことを目的とする。
【0007】
この発明はさらに,検索キーワードに関して詳細かつ丁寧に記載された内容を持つと予想される文章体を見つけ出すことを目的とする。
【0008】
この発明による文章体特定装置は,記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定する装置であって,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出する検索キーワード検出手段,上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出する手段,検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えるグループ内並び替え手段,および検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与する順位付け手段を備えたものである。
【0009】
この発明による文章体を特定させるためのコンピュータ読取り可能なプログラムは,記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定させるためのプログラムであって,検索キーワード検出手段が,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出し,検索キーワード種類数算出手段が,上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出し,グループ内並び替え手段が,上記検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,順位付け手段が,検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与するように,コンピュータを制御するものである。
【0010】
この発明は,複数の文章体を,検索キーワードに応じた検索結果(応答)として適していると考えられる順に順位付けするもので,処理対象とされる複数の文章体の存在(順位付けされるべき複数の文章体の存在)を前提とする。記憶装置(一つでも複数でもよい)に記憶されている複数の文章体が文章体特定処理の対象とされる。
【0011】
文章体特定装置において処理対象とされる文章体には,文書(特許文書,技術文書,論文,社内文書,ウェブ文書等),記事(ニュース記事等),文書中のパラグラフ(段落分けされた文章部分),一文章(日本文では「。」で終了する一の文章,英文では「.」(ピリオド)で終了する一の文章)などが含まれる。文書または記事が文章体特定装置の処理対象であれば,複数の文書または記事のそれぞれに順位が付与される。パラグラフが処理対象であれば,一の文書(または記事)に含まれる複数のパラグラフのそれぞれに順位が付与される。
【0012】
検索キーワードの入力が受付けられる。受付けられる検索キーワードは入力装置を用いてユーザが入力するキーワード(単語,フレーズ)そのものであってもよいし,これに代えて,または加えて,入力されたキーワードに関連するキーワードを用いてもよい。たとえば,類似語辞書をあらかじめ用意しておき,入力されたキーワードに類似するキーワードも,入力されたキーワードとともに検索キーワードの一つとすることができる。質問文の入力を受付け,受付けられた質問文から抽出される単語を,検索キーワードとしてもよい。
【0013】
検索キーワードは複数存在する。一つの検索キーワードのみでは複数の文章体の中から精度良く特定の文章体を見つけ出すことが困難であるからである。
【0014】
複数の検索キーワードは,それぞれが異なる重要度を持つ。複数の検索キーワードを用いて,複数の文章体の中から検索キーワードに合致する文章体を見つけ出す場合,その複数の検索キーワードは,一般に,そのすべてが同じレベル(重要視される程度,着目の程度が同じ)でなく,軽重が存在するからである。一例としては,受付けられた検索キーワードの受付順が早いほど大きな重要度が検索キーワードに与えられる。
【0015】
処理対象の複数の文章体が,文章体に含まれる検索キーワードの種類数にしたがって,グループ分けされる。たとえば,5種類(5つ)の検索キーワードが受付けられた場合,5種類の検索キーワードのすべてを含む文章体グループ,4種類の検索キーワードを含む文章体グループ,3種類の検索キーワードを含む文章体グループなどに,複数の文章体がグループ分けされる。
【0016】
各グループのそれぞれには,同数の検索キーワード種類数を持つ文章体が含まれる。この各グループのそれぞれにおいて,各グループに含まれる文章体が,上述した検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えられる。たとえば,4種類の検索キーワードを含む2つの文章体が存在する場合,より重要度が大きい検索キーワードを含む文章体が上位とされる。
【0017】
この発明によると,検索キーワード種類数が大きい順に上記グループが並べられ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べられることによって把握される順位が,処理対象の複数の文章体のそれぞれに付与される。文章体中に存在する検索キーワード種類数が大きい文章体,すなわち複数の検索キーワードを網羅している文章体ほど,高い順位が付与される。ユーザの検索要求(これが複数の検索キーワードに現れる)を満たす程度が高い記事に,より高い順位が付与される。
【0018】
さらに,同一の検索キーワード種類数を持つ複数の文章体については,各文章体に含まれる検索キーワードの重要度に基づく順位付けが行われる(グループ内順位付け)。たとえば,受付けの順番が早い検索キーワードを含む文章体に高い順位が付与される。ユーザの検索キーワード自体に対する要望(重要視する程度)が,順位に反映される。
【0019】
最も大きな重要度の検索キーワードを含む文章体については,それ以外の文章体よりも高順位を付与するようにしてもよい。一実施態様では,最も大きな重要度の検索キーワードを含む文章体について,その文章体に含まれる他の検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,この並び順に順位を付与する優先順位付け手段がさらに備えられる。この場合,グループ内並び替え手段による同一グループに含まれる文章体の並替え,および順位付け手段による順位付けは,優先順位付け手段によって順位付けされた文章体以外の文章体に対して行われ,かつ優先順位付け手段によって付与された順位を超えない順位とされる。最も大きな重要度,たとえば,受付けられた複数の検索キーワードのうち最初に受付けられた検索キーワードを含む文章体(ユーザが最も重要視する検索キーワードを含む文章体)に,高順位が付与される。
【0020】
一実施態様では,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,すべての処理対象の文章体の数を基準とした,文章体中の検索キーワードの存在割合を表す出現度を算出する出現度算出手段,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,文章体中における検索キーワードの集中の程度を表す密度を算出する密度算出手段,複数の文章体のそれぞれにおいて,複数の検索キーワードのそれぞれについて算出された出現度と密度を乗算し,乗算によって得られた値を文章体ごとに加算することによって文章体重要度を算出する文章体重要度算出手段をさらに備え,上記グループ内並び替え手段は,同一グループ内において検索キーワードの重要度に基づく複数の文章体の並び替えができずに同一順の複数の文章体が存在する場合に,さらに,上記文章体重要度算出手段によって算出された文章体重要度が大きい順に,その複数の文章体を並び替える。
【0021】
特定の文章体における特定の検索キーワードの出現度は,一実施態様では「特定文章体に含まれている特定キーワードの数/処理対象文章体のすべてにおける特定キーワードの存在平均値」によって算出される。ここで「処理対象文章体のすべてにおける特定キーワードの存在平均値」は,「処理対象文章体のすべてに含まれている特定キーワードの数/処理対象文章体の数」によって算出される。
【0022】
特定の文章体における特定の検索キーワードの密度は,一実施態様では「特定文章体に含まれる特定キーワードの数/特定文章体の文字数」によって算出される。
【0023】
複数の検索キーワードについて平均的に出現度と密度との乗算値が大きい文章体に,大きな文章体重要度が対応づけられる。検索キーワードを適度に含み,かつ冗長でない文章体に大きな文章体重要度が対応付けられるので,一のグループ内においてよりバランスのとれた文章体を高い順位に位置づけることができる。
【図面の簡単な説明】
【0024】
【図1】第1実施例の記事特定システムによって算出される値および結果を,表形式にまとめて示す。
【図2】第1実施例の記事特定システムが処理対象とする記事を模式的に示す。
【図3】第1実施例の記事特定システムの電気的構成を示すブロック図である。
【図4】第1実施例の記事特定システムの機能ブロック図を示す。
【図5】第1実施例の記事特定システムの処理の流れを示すフローチャートである。
【図6】重要度算出処理の流れを示すフローチャートである。
【図7】第1実施例の記事特定システムが処理対象とする記事中のパラグラフを模式的に示す。
【図8】記事の要約を模式的に示す。
【図9】変形例における,第1実施例の記事特定システムによって算出される値および結果を,表形式にまとめて示す。
【図10】変形例における,重み重要度算出処理の流れを示すフローチャートである。
【図11】第2実施例の記事特定システムの機能ブロック図を示す。
【図12】第2実施例の記事特定システムの処理の流れを示すフローチャートである。
【図13】順位付与処理の流れを示すフローチャートである。
【図14】第2実施例の記事特定システムの処理に用いられるデータを示す。
【図15】網羅フラグが数値に変換される様子を示す。
【図16】第3実施例の記事特定システムの処理の流れを示すフローチャートである。
【図17】第1検索キーワード優先順位付与処理の流れを示すフローチャートである。
【図18】順位付与処理の流れを示すフローチャートである。
【実施例】
【0025】
(第1実施例)
第1実施例の記事特定システムは,入力される検索キーワードに応じた検索結果(回答)として適していると考えられる順番に,多数の記事を順位付けするシステムである。記事特定システムが処理対象とする記事は,たとえば,新聞社または通信社が提供している多数のニュース記事である。この場合,多数のニュース記事の中から検索キーワードに応じた検索結果として適している記事が,記事特定システムによって順位付けされる。
【0026】
図1は,第1実施例の記事特定システムによって算出される値および結果を,表形式にまとめて示すものである。図2は記事特定システムが処理対象とする記事を,模式的に示すものである。記事特定システムの詳細なハードウェア構成および処理は後述することにして,記事特定システムが処理対象するデータ(記事),記事特定システムによって算出される値および結果(処理内容)の概略について説明する。
【0027】
たとえばニュース記事の場合,同一の事実(たとえば,首脳会談の開催の事実)について,複数の新聞社または通信社によって,多数の記者等により多数の記事がつくられて配信等される。第1実施例の記事特定システムは,たとえば,同一の事実について書かれた多数のニュース記事の中から,良質のニュース記事を見つけ出すために用いることができる。
【0028】
記事特定システムが検索対象とする記事は,その数によるが,あらかじめ絞込みのための処理を事前に行うことができる。たとえば,インターネット上において利用可能な検索エンジン(サーチエンジン)が用いられて,検索キーワードを含む複数の記事が抽出される。もちろん,検索エンジンは記事特定システムが処理する記事数を少なくするために用いられるものであるから,必ずしも検索エンジンを用いた事前の絞込み処理を行う必要はないのは言うまでもない。
【0029】
第1実施例では,分かりやすくするために,記事特定システムの処理対象の記事は,記事A〜記事Jの10個の記事であるとする。記事特定システムは,記事A〜記事Jの10個の記事について,検索キーワードに応じた検索結果(回答)として適していると考えられる順番に順位付けを行う。得られた順位に応じて,たとえば上位3つの記事のみを記事特定システムのユーザに示すようにしてもよいし,最も高い順位の記事のみを示すようにしてもよい。各記事のタイトルのみを順位通りに並べてユーザに示すようにしてもよい。もちろん,記事特定システムの処理対象の記事のすべてを,順位通りの順番に並べてユーザに示すようにしてもよい。
【0030】
記事特定システムでは,検索キーワードが入力されることを前提とする。検索キーワードは,単語であっても,文章(質問文等)の一部であってもよい。文章の場合には,たとえばN−gramによって入力文章から複数のキーワードが抽出され,抽出された複数のキーワードが検索キーワードとして用いられる。検索キーワードは,一つの単語のみを用いる場合よりも,複数の単語を用いる方が,検索キーワードに適する(マッチする)記事を検索しやすい。好ましくは,検索キーワードとして複数の単語が用いられる。類似語辞書(データベース)を用意しておき,検索キーワードとして入力された単語が一つの単語である場合に,その単語に類似する単語も検索キーワードに含ませるようにしてもよい。たとえば,「首相」のみが検索キーワードとして入力された場合には,記事特定システムは,「総理大臣」,「麻生」等も検索キーワードとする。もちろん,検索キーワードとして入力された単語が2以上の複数の単語である場合にも,類似語辞書を用いて,入力単語のそれぞれの類似語を検索キーワードに含ませてもよいのは言うまでもない。またN−gramによって抽出されたキーワードの組合せ(たとえば,「麻生首相」など)を検索キーワードに含ませるようにしてもよい。
【0031】
図1および図2を参照して,この実施例では,3つの単語(「○○○」,「△△△」および「××××」)が検索キーワードとして用いられている。3つの検索キーワードのそれぞれについて,処理対象の記事A〜記事Jのそれぞれを対象にして,出現度,密度および重要度が算出される。
【0032】
出現度とは,すべての検索対象記事の中において,特定の検索キーワードが,どの程度の割合で特定記事の中に含まれているのかを表す値(数値)である。出現度は,次式によって算出される。
【0033】
出現度=特定記事に含まれる特定キーワードの数/すべての処理対象記事における特定キーワードの存在平均値 ・・・式1
【0034】
「特定記事に含まれる特定キーワードの数」,たとえば記事Aに含まれる特定キーワード「○○○」の数は,記事Aに含まれるキーワード「○○○」の数をカウントすることによって得られる。「すべての処理対象記事における特定キーワードの存在平均値」,たとえば検索対象記事A〜Jの10個の記事における特定キーワード「○○○」の存在平均値は,検索対象記事A〜Jのすべてに含まれる特定キーワード「○○○」の数をカウントし,これを,すべての検索対象記事の数,ここでは10によって除算することによって得られる。
【0035】
密度とは,検索対象記事のそれぞれにおいて,特定の検索キーワードが,どの程度集中して存在しているかを表す値(数値)である。密度は次式によって算出される。
【0036】
密度=特定記事に含まれる特定キーワードの数/特定記事の文字数 ・・・式2
【0037】
「特定記事に含まれる特定キーワードの数」,たとえば記事Aに含まれる特定キーワード「○○○」の数は,記事Aに含まれるキーワード「○○○」の数をカウントすることによって得られる。「特定記事の文字数」,たとえば記事Aの文字数は,記事Aの文字数をカウントすることによって得られる。
【0038】
特定記事における特定キーワードについて,上述した出現度および密度が算出されると,その特定記事における特定キーワードについての重要度が,出現度および密度を用いて算出される。特定記事における特定キーワードについての重要度は次式によって算出される。
【0039】
特定記事における特定キーワードについての重要度
=出現度×密度 ・・・式3
【0040】
出現度によって,すべての検索対象記事の数を基準とする,特定記事中の特定キーワードについての存在割合が分かる。密度によって,特定記事それぞれを基準とする,特定キーワードの集中の程度が分かる。出現度および密度を乗算した結果である特定記事における特定キーワードについての重要度は,特定キーワードについて,複数の検索対象記事の全体に占める割合と,検索対象記事自体に占める割合のいずれもが考慮された値になる。
【0041】
たとえば,長い文章によって構成された記事と,短い文章によって構成された記事を考える。長い文章によって構成された記事には検索キーワードが多数含まれる可能性が高くその場合出現度は大きくなるが,検索キーワードの密度としては低い値が得られる可能性が高い。他方,短い文章によって構成された記事は長い文章によって構成された記事に比べると出現度は小さくなる可能性が高いが,検索キーワードの密度として高い値が得られることがある。すなわち,コンパクトな文章中に効率よく検索キーワードが用いられている記事であれば,特定記事における特定キーワードについての重要度は大きい値になりやすい。重要度が大きい記事は,検索キーワードを適度に含み,かつ冗長なものでない可能性が高い。このような観点から,記事特定システムは記事の良否判断(順位付け)を行う。
【0042】
もっとも,特定記事における一の検索キーワードについての重要度が大きい記事であっても,その特定記事における他の検索キーワードについての重要度は低い記事も存在する。図1に示すように,記事特定システムは,複数の検索キーワードのそれぞれについて上述の特定記事における特定キーワードについての重要度を算出し,検索キーワードごとに算出される重要度を記事のそれぞれについて加算したものを,記事重要度として算出する。記事重要度が大きい順に,検索対象の記事の順位付けが行われる。複数の検索キーワードについて,平均的に(バランス良く)重要度が大きい記事に,高順位が付与される。
【0043】
図3は,記事特定システムの電気的構成を示すブロック図である。図4は,記事特定システムにおいて複数の記事の順位付けが行われるまでの処理をブロック図によって示すものである。図5および図6は記事特定システムの処理の流れを示すフローチャートである。記事特定処理は,図5および図6に示すフローチャートの処理(記事特定プログラム)をコンピュータに実行させることによって実現させることもできるし,図4に示す各ブロック図の機能を達成するハードウェアによっても実現することができる。この実施例では,記事特定プログラムに基づく記事特定処理を説明する。
【0044】
記事特定システムはコンピュータ・システムによって構成される。図3を参照して,記事特定システムは,システムの全体を統括的に制御するCPU(図示略),ならびにデータおよびプログラムを一時的に記憶するメモリ2を含む処理装置1を備えている。処理装置1に,検索キーワード,ユーザによる指示等を入力するための入力装置3,順位付けされた記事等を表示するための表示装置4,コンピュータ・システムを記事特定システムとして動作させるためのプログラム(記事特定プログラム)およびデータ,オペレーティング・システム等を記憶するハードディスク5,ならびに通信装置6を備えている。通信装置6を通じてネットワーク接続される記事データベース7に,記事特定システムが検索対象とする多数の記事が記憶されている。記事データベース7に記憶されている多数の記事が通信装置6を介してダウンロードされてハードディスク5に記憶される。ダウンロードされた記事を処理対象にして,記事特定処理が行われる。
【0045】
入力装置3が用いられて記事特定処理のためのプログラムの起動指示(実行プログラムの起動指示)が入力されると,ハードディスク5から記事特定プログラムおよびデータが読み出されて処理装置1のメモリ2に読込まれ,CPUによって実行される。
【0046】
図5を参照して,はじめに複数の検索キーワードが入力装置3が用いられて入力される(ステップ11)。上述したように,入力された検索キーワードが一つの場合には,類似語辞書を用いて,入力された検索キーワードと,その検索キーワードに類似するキーワードとを,検索キーワードとして用いてもよい。
【0047】
入力された複数の検索キーワードにしたがって,記事データベース7に記憶されている多数の記事の中から,複数の検索キーワードのいずれかを含む複数の記事が記事特定システムにダウンロードされる(ステップ12)。上述したように,この処理は,一般的な検索エンジン(サーチ・エンジン)を利用することができる。もちろん,記事データベース7に記憶されている多数の記事のすべてをダウンロードしてもよい。
【0048】
複数の記事(記事データ)のそれぞれを特定するための記事カウンタiおよび複数の検索キーワードのそれぞれを特定するための検索キーワード・カウンタjが,初期化される(ステップ13)。
【0049】
複数の記事のうちの一つ(第1記事)における,複数の検索キーワードのうちの一つ(第1キーワード)についての特定記事における特定キーワードについての重要度算出処理が行われる(ステップ14,図6)。
【0050】
特定記事における特定キーワードについての重要度は,出現度と密度を乗算することによって算出される(式3)。図6を参照して,上述した式1に基づいて,第1記事における第1キーワードの出現度が算出され(ステップ31),式2に基づいて第1記事における第1キーワードの密度が算出される(ステップ32)。算出された出現度と密度が乗算されることによって,第1記事における第1キーワードについての重要度が算出される(ステップ33)。
【0051】
図5に戻って,すべての検索キーワードについての処理が終了していない場合(ステップ15でNO),検索キーワード・カウンタjがインクリメントされる(ステップ16)。第1記事における第2検索キーワードについての重要度の算出に進む(ステップ14)。
【0052】
第1記事におけるすべての検索キーワードについての重要度算出が終了すると(ステップ15でYES ),第1記事についての重要度(記事重要度)が算出される(ステップ17)。記事重要度は,第1記事におけるすべての検索キーワードのそれぞれについて算出された重要度を加算することによって,得られる(図1参照)。
【0053】
すべての記事についての重要度算出処理が終了したかどうかが判断される(ステップ18)。重要度算出処理を終えていない記事が存在する場合(ステップ18でNO),記事カウンタiがインクリメントされ(ステップ19),かつ検索キーワード・カウンタjが初期化される(ステップ20)。第2記事においても,すべての検索キーワードについての重要度の算出が終了するまで,重要度算出処理が繰り返される。
【0054】
すべての記事について,すべての検索キーワードの重要度の算出が終了すると(ステップ18でYES ),記事ごとに算出された記事重要度が大きい順番に,記事のそれぞれに順位がつけられる(ステップ21)。
【0055】
たとえば,順位付けされた順番で,記事中のタイトルを,表示装置4の表示画面上に一覧に表示したり,最も高い順位の記事を表示装置4の表示画面上に表示したりすることによって,記事特定システムによる処理結果(出力)がユーザに示される。
【0056】
すべての検索キーワードが考慮された上で,検索キーワードの出現度が高く,かつ検索キーワードの密度が高い記事が高順位となる。複数の記事の中から,検索キーワードに沿う比較的良質な記事を見つけることができる。
【0057】
上述した実施例では,複数の記事の中から比較的良質の記事を見つける処理を説明したが,同様にして,一つの記事(文書)に含まれる複数のパラグラフの中から,検索キーワードの出現度が高く,かつ検索キーワードの密度が高いパラグラフを見つけることもできる。図7を参照して,この場合,記事特定システム(パラグラフ特定システムと言ってもよい)の処理対象は,記事(文書)に含まれるパラグラフ単位の文章部分となる。パラグラフ重要度(記事重要度に対応する)が算出されて,パラグラフ重要度が大きい順番にパラグラフのそれぞれに順位がつけられる。
【0058】
パラグラフ重要度が大きい数個のパラグラフのみを,記事(文章)の代表とすることによって,記事の要約を得ることができる。たとえば,記事Aがパラグラフa〜dの4つのパラグラフを含み,このうちパラグラフaおよびcが高順位(いずれかが一位で,いずれかが二位)であったとする。この場合,図8に示すように,パラグラフaおよびcのみを含む文書を,記事Aの要約としてユーザに提示(表示装置4の表示画面上に表示)してもよい。高順位のパラグラフは検索キーワードに沿った文章部分を含み,かつコンパクトにまとめられている可能性が高く,記事の要約として適している可能性が高い。少ない文字数で記事内容を把握することができる。
【0059】
もちろん,複数の記事の中から比較的良質の記事を見つける処理を行い,それに続けて,見つかった良質な記事について,パラグラフ重要度の高いパラグラフをユーザに提示するようにしてもよい。
【0060】
パラグラフよりもさらに短い文章単位,たとえば,「。」によって区切られる一文章について,上述と同様に順位付けを行ってユーザに提示するようにしてもよい。
【0061】
変形例
上述した実施例では,検索キーワードのそれぞれについて出現度および密度を算出し,出現度と密度の乗算結果を,特定記事における特定キーワードについての重要度と位置づけている。変形例では,検索キーワードに重みが付与され,出現度および密度にしたがって算出された重要度に対して重付けが行われた値(以下,「重み重要度」と呼ぶ)が,上述した実施例の「重要度」に代えて用いられる。
【0062】
図9は,図1に対応するもので,記事特定システムによって,検索キーワードのそれぞれについて重み重要度が算出される例を示している。図10は図6に対応するもので,記事特定システムによる重み重要度算出処理を示している。図10および図6を比較して,重み重要度を用いる場合,出現度と密度の乗算結果(「重要度」)に,さらに検索キーワードについての重みが乗算される(重付けされる)点が異なる(ステップ34)。
【0063】
図9を参照して,検索キーワードのそれぞれに重みが付与される。これは,複数の検索キーワードのすべてが,ユーザにとって必ずしも均等に重要視されるわけではなく,複数の検索キーワード間には軽重が存在することがある,という事実に着目したものである。
【0064】
ユーザが入力した質問文から抽出される複数のキーワードが検索キーワードとして用いられる例を考える。たとえば,「麻生首相はG20でIMFの資金強化を提案した?」という質問文が入力されたとすると,「麻生首相」(または「麻生」および「首相」),「G20」,「IMF」,「資金強化」および「提案」という5つのキーワードが抽出され,この5つのキーワードが検索キーワードとされる。ここで,一般に,質問文を入力するユーザは,重要視するキーワードを質問文の先頭に入力する傾向がある。したがって,検索キーワードの重付けでは,質問文から抽出された順番に(出現の順番に),検索キーワードのそれぞれについて,より大きな重みが付与される。たとえば,5つの検索キーワードの場合,抽出された順番に,「5」,「4」,「3」,「2」および「1」が,5つの検索キーワードそれぞれの重みとされる。3つの検索キーワードの場合であれば,抽出された順番に「3」,「2」,「1」が,3つの検索キーワードのそれぞれの重みとされる。
【0065】
図9を参照して,記事ごとに,3つの検索キーワード「○○○」,「△△△」および「××××」のそれぞれについて算出された重要度に対して,検索キーワードの重みを乗算することによって,重み重要度が算出される。検索キーワードごとに算出された重み重要度を記事のそれぞれについて加算したものが,記事重要度とされる。記事重要度が大きい順に,検索対象の記事の順位付けが行われるのは,上述した実施例と同じである。検索キーワード自体の重みが,記事の順位付けに反映される。検索キーワードの重みは,ユーザが重要視する程度を表す値であるから,ユーザの要望に沿い,かつ比較的良質の記事を見つけることができる。
【0066】
検索キーワードに付与される重みは,検索キーワードの入力の順番(並び順)に応じて付与してもよい。たとえば,検索キーワードの入力欄に,「○○○」,「△△△」,「××××」がこの順番に入力された(表示画面上で左から順に並んでいる)場合に,「○○○」に重み3が,「△△△」に重み2が,「××××」に重み1が,それぞれ付与される。
【0067】
(第2実施例)
図11は,図4に対応するもので,第2実施例の記事特定システムにおいて,複数の記事の順位付けが行われるまでの処理のブロック図を示している。図4に示す第1実施例の記事特定システムについてのブロック図とは,「網羅度算出」のブロックが加えられている点が異なる。第2実施例の記事特定システムもコンピュータ・システムによって構成されるのは,第1実施例の記事特定システム(図3参照)と同じである。
【0068】
特定の検索キーワードについて得られる出現度と密度を乗算することによって特定記事における特定キーワードについての重要度を算出し,それを記事ごとに加算することによって特定の記事についての記事重要度を算出して,記事重要度を記事の評価(順位付け)に用いるのは,上述した第1実施例と同様である。第2実施例では,記事重要度に加えて,記事中に含まれる検索キーワードの数(種類)(順位付けされるべき記事が,複数の検索キーワードをどの程度網羅しているか)が,記事の評価(順位付け)に用いられる。
【0069】
図12および図13は,第2実施例の記事特定システムの処理の流れを示すフローチャートである。図14は第2実施例の記事特定システムにおける処理において,記事中に含まれる検索キーワードの数がどのように用いられるかを説明するためのものである。図12および図13において,図5および図6に示す第1実施例の記事特定システムについてのフローチャートと同一処理には同一符号を付し,重複した詳細な説明は省略する。
【0070】
複数の検索キーワードが入力され(ステップ11),記事データベース7に記憶されている多数の記事の中から,入力された複数の検索キーワードの少なくともいずれかを含む複数の記事が記事特定システムにダウンロードされる(ステップ12)。記事カウンタiおよび検索キーワード・カウンタjが初期化される(ステップ13)。
【0071】
複数の記事のうちの一つ(第1記事)に,複数の検索キーワードのうちの一つ(第1キーワード)が存在するかどうかが判断される(ステップ41)。
【0072】
第1キーワードが第1記事中に存在する場合(ステップ41で「有」),第1記事は第1キーワードを網羅していると扱われる。第1記事における第1キーワードについて網羅フラグが立てられる(ステップ42)。
【0073】
図14を参照して具体的に説明する。複数の検索キーワードが,「○○○」,「△△△」,「××××」,「□□□」,「☆☆☆」であり,この順番に入力されたとする(変形例において説明したように,質問文から抽出された順番であってもよい)。すなわち,図14に示す5つの検索キーワード「○○○」,「△△△」,「××××」,「□□□」,「☆☆☆」は,この並び順に重要視されている(大きい重要度を持つ)とする。記事A中に,検索キーワード「○○○」が存在するかどうかが判断される。存在する場合,記事Aにおける検索キーワード「○○○」について網羅フラグがオンされる(フラグ「1」が立てられる)。
【0074】
第1キーワードが第1記事中に存在しない場合,網羅フラグは立てられない(ステップ41で「無」)。図14においては「0」によって網羅フラグが立てられていないことが示されている(たとえば,記事Aについての検索キーワード「☆☆☆」を参照)。
【0075】
次に,重要度算出処理が行われる(ステップ14)。第1実施例と同様,式1に基づいて第1記事における第1キーワードの出現度が算出され(ステップ31),式2に基づいて第1記事における第1キーワードの密度が算出される(ステップ32)。算出された出現度と密度が乗算されることによって,第1記事における第1キーワードについての重要度が算出される(図6)。
【0076】
すべての検索キーワードについての処理が終了していない場合(ステップ15でNO),検索キーワード・カウンタjがインクリメントされ(ステップ16),第1記事における第2検索キーワードについての処理に進む(ステップ41,42,14)。
【0077】
すべての検索キーワードについて処理が終わると(ステップ15でYES ),第1記事についての網羅度小計が算出される。
【0078】
図14を参照して,網羅度小計とは,記事中に含まれる検索キーワードの種類数である。たとえば,記事Aは,5種類の検索キーワードのうち4種類の検索キーワードを含んでいる(検索キーワード「○○○」,「△△△」,「××××」および「□□□」に網羅フラグ「1」が立っている)。記事Aについての網羅度小計は「4」となる。
【0079】
網羅度小計が算出された後,記事重要度が算出される(ステップ17)。第1実施例と同様に,第2実施例においても,記事重要度は,第1記事におけるすべての検索キーワードのそれぞれについて算出された重要度を加算することによって,得られる。
【0080】
すべての記事についての処理が終了したかどうかが判断され(ステップ18),処理を終えていない記事が存在する場合(ステップ18でNO),記事カウンタiがインクリメントされ(ステップ19),かつ検索キーワード・カウンタjが初期化される(ステップ20)。第2記事においても,検索キーワードのそれぞれについて網羅フラグのオン/オフ処理(ステップ42)が行われ(図14参照),かつ記事重要度(ステップ17)が算出される。
【0081】
すべての記事について,複数の検索キーワードのそれぞれについての網羅フラグのオン/オフ処理(ステップ42)および記事重要度の算出(ステップ17)が終了すると(ステップ18でYES ),順位カウンタmが初期化された後(m=0)(ステップ22),順位付与処理に進む(ステップ21A)。
【0082】
第2実施例の記事特定システムにおける順位付与処理(ステップ21A)(図13)は,記事ごとに算出された記事重要度が大きい順番に,記事のそれぞれに順位をつける第1実施例の記事特定システムの順位付与処理(図5のステップ21)と異なる。図14を参照しつつ,第2実施例の記事特定システムにおける順位付与処理(ステップ21A)(図13)を説明する。
【0083】
はじめに,検索キーワード種類数カウンタkに検索キーワード種類数が代入される(ステップ51)。図14に示す例では,検索キーワードの種類数は「5」であるので,k=5となる。
【0084】
網羅度小計としてkの値をもつ記事のみが,処理対象とされる(ステップ52)(グループ化処理)。図14を参照して,k=5の網羅度小計をもつ記事(すなわち,5種類(5つ)の検索キーワードのすべてを含む記事)は,記事A〜記事Jに存在しない(ステップ53でNO)。この場合,検索キーワード種類数カウンタkがデクリメントされて(ステップ54,ステップ55でNO)(k=4),再度同じ処理が行われる(ステップ52,53)。
【0085】
記事A〜記事Jには,k=4の網羅度小計を持つ記事(すわなち,4種類の検索キーワードを含む記事)が存在する(記事A,記事Bおよび記事E)。記事A,記事Bおよび記事Eの3つの記事のみを対象とした順位付け処理に進む(ステップ53でYES )。
【0086】
網羅フラグの数値変換処理が行われる(ステップ56)。
【0087】
図14を参照して,上述のように,網羅フラグは,記事のそれぞれについて,検索キーワードごとにオン/オフされる。また,複数の検索キーワードは,上述のように,重要視されている順番(入力された順番)(検索キーワードの重要度の大きい順番)に並べられている。したがって,重要視されている順番に並べられている複数の検索キーワードのそれぞれのフラグのオン/オフを,そのまま数値として用いることによって,記事中に重要な検索キーワードが含まれているかどうかを,数値によって表すことができる。
【0088】
図15には,図14に示すk=4の網羅度小計を持つ記事A,記事Bおよび記事Eについて,網羅フラグを数値(分かりやすくするために,10進数によって示す)に変換する様子を示している。数値として扱われた状態の網羅フラグを,以下「数値化網羅度」と呼ぶ。
【0089】
記事Aの網羅フラグの並びは11110であるので,数値化網羅度(10進数表記)は「30」となる。記事Bの網羅フラグの並びは01111であり,数値化網羅度は「15」となる。記事Eの網羅フラグの並びは11110であり,数値化網羅度は「30」になる。
【0090】
数値化網羅度の大きい記事は,小さい記事よりも重要視される検索キーワードを含む。数値化網羅度の大きい順に記事が並び替えられる。さらに,同一の数値化網羅度を持つ記事が複数存在する場合には,それらの記事は,記事重要度(ステップ17)が大きい順番に並び替えられる(ステップ57)。
【0091】
記事A,記事B,記事Eの場合,記事Aおよび記事Eの数値化網羅度が「30」,記事Bの数値化網羅度が「15」であるから,記事AEBの順番,または記事EABの順番に並び替えられる。記事Aが先頭か,記事Eが先頭かは,記事Aおよび記事Eのそれぞれについて算出されている記事重要度(ステップ17)に基づく。
【0092】
順位カウンタmがインクリメントされ(m=1)(ステップ58),並び順の先頭(順位が付けられていないもの)の順位がmとされる(ステップ59)。すなわち,記事A(または記事E)に順位「1」が付与される。その後,順位カウンタmがインクリメントされ(ステップ60でNO,ステップ58)(m=2),並び順が2番目の記事(記事E(または記事A))に対して,次の順位「2」が付与される(ステップ59)。同様にして,記事Bに順位「3」が付与される。
【0093】
k=4の網羅度小計を持つ記事のすべてについて順位が付与されると(ステップ60でYES ),検索キーワード種類数カウンタkがデクリメントされる(ステップ54)。すなわち,k=3の網羅度小計を持つ記事,すなわち5種類の検索キーワードのうち3種類の検索キーワードを持つ記事を対象にして,上述と同様に順位付けが行われる。
【0094】
3種類の検索キーワードを持つ記事の順位は,4種類の検索キーワードを持つ記事の順位を超えることはない。3種類の検索キーワードを持つ記事の最上位の記事は,4種類の検索キーワードを持つ記事の最下位(上述の場合,記事B)に付与された順位(3位)の次の順位,すなわち順位「4」が付与されることになる(ステップ58,59)。
【0095】
すべての記事についての順位付けが終了すると(ステップ55でYES ),記事特定システムの処理が終了する。第1実施例と同様に,順位付けされた順番で,記事中のタイトルを表示装置4の表示画面上に一覧に表示したり,最も高い順位の記事を表示装置4の表示画面上に表示したりすることによって,記事特定システムによる処理結果(出力)がユーザに示される。
【0096】
第2実施例の記事特定システムでは,検索キーワード種類を多く含む記事ほど,すなわち,多くの種類の検索キーワードを網羅している記事ほど高い順位が付与される。ユーザの検索要求(これが複数の検索キーワードに現れる)を全体的に満たす程度が高い記事に,より高い順位を付与することができる。
【0097】
同じ種類数の検索キーワードを含む記事が複数存在する場合には,重要視される検索キーワードを含む記事(数値化網羅度が大きい記事)ほど,高い順位が付与されるので,ユーザが重要視する程度も順位に反映される。さらに,数値化網羅度を用いても順位付けできないときには,記事重要度が用いられて順位付けされるので,検索キーワードに沿う比較的良質な記事に高い順位を付与することができる。
【0098】
(第3実施例)
図16から図18は,第3実施例の記事特定システムの処理の流れを示すフローチャートである。第3実施例の記事特定システムは,複数の検索キーワードのうち,最初に入力された検索キーワード(最も重要視されている検索キーワード)(第1検索キーワード)を含む記事について優先的に順位を付し,その後に第1検索キーワードを含まない記事について順位を付与する点が,包含されている検索キーワードの種類数が多い記事程高い順位を付与する第2実施例と異なる。図16〜図18において,図12および図13に示す第2実施例の記事特定システムについてのフローチャートと同一処理には同一符号を付し,重複した詳細な説明は省略する。第2実施例において用いた図14を参照して,第3実施例の記事特定システムの処理を説明する。
【0099】
すべての記事について,複数の検索キーワードのそれぞれについての網羅フラグのオン/オフ処理(ステップ42)および記事重要度の算出(ステップ17)が終了すると(ステップ18でYES ),順位カウンタmが初期化された後(m=0)(ステップ22),第1検索キーワード優先順位付与処理に進む(ステップ23)。
【0100】
図17を参照して,第1検索キーワード優先順位付与処理について説明する。
【0101】
複数種類の検索キーワードのうち,最初に入力された検索キーワード(これが,第1検索キーワードである)を含む記事のみが処理対象とされる(ステップ71)。
【0102】
図14を参照して,複数の検索キーワードが,「○○○」,「△△△」,「××××」,「□□□」,「☆☆☆」であり,この順番に入力されたとする(質問文から抽出された順番であってもよい)。この場合,第1検索キーワードは「○○○」である。記事A,記事Cおよび記事Eに,第1検索キーワード「○○○」が含まれているので(網羅フラグが「1」),これらの3つ記事ACEが,処理対象とされる。
【0103】
第1検索キーワードが含まれている記事が存在する場合(ステップ72でYES ),第1検索キーワードを含む記事について,優先的に順位付与処理が行われる。第2実施例と同様に,網羅フラグが数値変換され(ステップ56),数値化網羅度の大きい順に記事が並べられる。同一の数値化網羅度を持つ記事が複数存在する場合には,それらの記事は,記事重要度(ステップ17)が大きい順番にさらに並び替えられる(ステップ57)。
【0104】
図14を参照して,記事A,記事C,記事Eの場合,記事Aおよび記事Eの数値化網羅度が「30」,記事Cの数値化網羅度が「25」であるから,記事AECの順番,または記事EACの順番に並び替えられる。記事Aが先頭か,記事Eが先頭かは,記事Aおよび記事Eのそれぞれについて算出されている記事重要度(図5のステップ17)に基づく。
【0105】
順位カウンタmがインクリメントされ(m=1)(ステップ58),並び順の先頭(順位が付けられていないもの)の順位がmとされる(ステップ73)。すなわち,記事A(または記事E)に順位「1」が付与される。その後,順位カウンタmがインクリメントされ(ステップ74でNO,ステップ58)(m=2),並び順が2番目の記事(記事E(または記事A))に対して,次の順位「2」が付与される(ステップ73)。同様にして,記事Cに順位「3」が付与される。
【0106】
第1検索キーワードを持つすべての記事についての順位付与が終了する(ステップ74でYES ),または第1検索キーワードを持つ記事が存在しない場合(ステップ72でNO),第1検索キーワード優先順位付与処理が終了する。第1検索キーワードを持たない記事についての順位付与処理に進む(図16のステップ21B)。
【0107】
図18を参照して,第1検索キーワードを持つ記事(すでに順位が付与されている記事AEC)に順位が付与されない点(ステップ81で第1検索キーワードを持つ記事は処理対象から除外される)を除いて,第2実施例の順位付与処理(図13)と同じ処理が行われる。すなわち,検索キーワード種類数カウンタkに検索キーワード種類数が代入され(ステップ51),すでに順位が付与された記事を除いて,網羅度小計としてkの値を持つ記事の有無が判断される(ステップ81)。存在する場合には(ステップ53でYES ),数値化網羅度が大きい順番(同一の数値化網羅度を持つ記事が複数存在すれば,さらに記事重要度の大きい順番)に網羅度小計がkである記事が並べられて,その並び順に順位が付与される(ステップ56〜59)。第3実施例において,第1検索キーワードを持たない記事の順位が,第1検索キーワードを持つ記事の順位を超えることはない。
【0108】
第3実施例においても,すべての記事についての順位付けが終了すると(ステップ55でYES ),記事特定システムの処理が終了する。第1,2実施例と同様に,順位付けされた順番で,記事中のタイトルを表示装置4の表示画面上に一覧に表示したり,最も高い順位の記事を表示装置4の表示画面上に表示したりすることによって,記事特定システムによる処理結果(出力)がユーザに示される。
【0109】
第3実施例の記事特定システムでは,第1検索キーワード(典型的には,最初に入力された検索キーワード)を含む記事に対して,優先的に,高い順位が付与される。複数種類の検索キーワードが入力される場合,最初に入力される検索キーワードは,それよりも後に入力される検索キーワードに比べてユーザが重要視する程度が高いことが多く,第3実施例では,そのような第1検索キーワードを含む記事により高い順位が付与される。
【0110】
第1実施例の記事特定システムは,記事の内容そのもの(検索キーワードを適度に含み,かつ冗長なものでない)(コンパクトな文章中に効率よく検索キーワードが用いられているかどうか)に着目して,複数の記事を順位付けする。第2実施例の記事特定システムでは,複数の検索キーワードを網羅している程度に着目して,複数の記事を順位付けする。第3実施例の記事特定システムでは,最初に入力された(最も着目すべき)検索キーワード(第1検索キーワード)を含む記事を最重要視して,複数の記事を順位付けする。このため,同じ記事を処理対象とした場合,第1,第2,第3実施例の記事特定システムは,異なる結果(順位付け)を生じさせる。
【0111】
第1,第2,または第3実施例の記事特定システムのいずれを用いるかは,たとえば,順位付けの対象となる記事が格納されているデータベース等にしたがって決められる。同一内容の複数の記事(たとえば,同一の事件に対する複数の報道記事)が処理対象であれば,第1実施例の記事特定システムを用いると,複数記事の中から,より分かりやすい記事が抽出されやすい。特定技術分野の記事(論文データベースなど)が処理対象の記事(カテゴリがある程度定まっている記事)であれば,第2実施例の記事特定システムを用いると,検索要求にマッチする記事をピンポイントで見つけやすくなる。多種多少な記事(たとえば,ホームページなど)が処理対象であれば,第3実施例の記事特定システムを用いると,所望の記事の絞込みを行いやすい。このように,第1,第2および第3実施例の記事特定システムは,処理対象の記事内容(データベースの特性)に応じて,適宜選択されて用いられる。
【0112】
上述した実施例(第1実施例の変形例,第2実施例,および第3実施例)において,複数種類の検索キーワードは,入力順(または質問文から抽出された順番)に重要視されていると扱われているが,もちろん,他のやり方によって複数種類の検索キーワードの重要視の程度の大小関係(重要度)を定めてもよい。複数種類の検索キーワードの重要度は,たとえば以下のように定めることもできる。
【0113】
(1)入力された順番が遅いほど,大きな重要度を対応づける。
たとえば,英語表現による質問文から抽出される複数の単語を検索キーワードに用いる場合である。「How old is Obama ?」という質問文の場合,「How」,「old」,「is」および「Obama」の4つの単語が検索キーワードとなる。この場合,「Obama」,「is」,「old」,「How」の順番で,検索キーワードに対して大きな重要度(重要視の程度の大小関係)が対応づけられる。
【0114】
(2)固有名詞辞書をあらかじめ作成しておき,入力された検索キーワードが固有名詞辞書に登録されている固有名詞(たとえば,「obama 」)であれば,その検索キーワードに対して最大重要度を対応づける。固有名詞以外の単語は,入力順等にしたがって重要度を対応づける。
【0115】
(3)検索キーワードのそれぞれについて,ユーザの入力(指示)によって,重要度を対応づける。検索キーワードの入力とともに,入力された検索キーワードの重要度(大小関係)の入力を受け付ける態様である。
【0116】
(4)過去に使用された検索キーワードのそれぞれについて使用履歴を記録しておき,使用回数の多い検索キーワードほど,大きな重要度を対応づける。
【0117】
(5)単語と重要度とを関連付けた辞書をあらかじめ作成しておき,入力された検索キーワードが辞書に登録されている単語の場合には,その検索キーワードに対して辞書中の重要度を対応づける。登録されていない単語であれば入力順等にしたがって重要度を対応づける。
【0118】
(6)処理対象記事中に含まれている検索キーワードの数を数え,数が多い検索キーワードの順に,大きな重要度を対応づける。
【符号の説明】
【0119】
1 処理装置
2 メモリ
3 入力装置
4 表示装置
5 ハードディスク
6 通信装置
7 記事データベース
【技術分野】
【0001】
この発明は,文章体特定装置およびコンピュータに文章体を特定させるためのプログラムに関する。
【背景技術】
【0002】
WEB検索,企業内検索などでは,キーワード検索によって所望の文書等を検索することが行われている。文書検索の精度を高めるために,文書に関連するインデックスをあらかじめ作成しておいたり,検索フレーズに関連するフレーズを予測したりすることが行われている(特許文献1)。また,TF/IDF法に基づいて得られるスコアを,情報検索に用いるものもある(特許文献2)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−48685号公報
【特許文献2】木谷 強,外3名,”フルテキストと抽出キーワードを利用した情報検索”,情報処理学会研究報告,社団法人情報処理学会,1996年9月13日,第96巻,第88号,pp.71−76
【0004】
大量の文書の中からキーワード検索によって所望の文書を見つけ出す場合,検索キーワードを含む多数の文書がヒットすることがある。しかしながら,ヒットした文書が所望の文書であるとは必ずしも限らない。ヒットした多数の文書の内容を精査して,ヒットした多数の文書の中から所望の文書を見つけ出す作業が行われるのが一般的である。
【発明の開示】
【0005】
この発明は,検索キーワードを含むことのみならず,複数の検索キーワードをどの程度含むかに応じて,複数の文章体の中から複数の検索キーワードに合致する内容を持つ文章体を見つけ出すことを目的とする。
【0006】
この発明はまた,複数の文章体の中から,より重要な検索キーワードを含む文章体を見つけ出すことを目的とする。
【0007】
この発明はさらに,検索キーワードに関して詳細かつ丁寧に記載された内容を持つと予想される文章体を見つけ出すことを目的とする。
【0008】
この発明による文章体特定装置は,記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定する装置であって,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出する検索キーワード検出手段,上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出する手段,検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えるグループ内並び替え手段,および検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与する順位付け手段を備えたものである。
【0009】
この発明による文章体を特定させるためのコンピュータ読取り可能なプログラムは,記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定させるためのプログラムであって,検索キーワード検出手段が,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出し,検索キーワード種類数算出手段が,上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出し,グループ内並び替え手段が,上記検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,順位付け手段が,検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与するように,コンピュータを制御するものである。
【0010】
この発明は,複数の文章体を,検索キーワードに応じた検索結果(応答)として適していると考えられる順に順位付けするもので,処理対象とされる複数の文章体の存在(順位付けされるべき複数の文章体の存在)を前提とする。記憶装置(一つでも複数でもよい)に記憶されている複数の文章体が文章体特定処理の対象とされる。
【0011】
文章体特定装置において処理対象とされる文章体には,文書(特許文書,技術文書,論文,社内文書,ウェブ文書等),記事(ニュース記事等),文書中のパラグラフ(段落分けされた文章部分),一文章(日本文では「。」で終了する一の文章,英文では「.」(ピリオド)で終了する一の文章)などが含まれる。文書または記事が文章体特定装置の処理対象であれば,複数の文書または記事のそれぞれに順位が付与される。パラグラフが処理対象であれば,一の文書(または記事)に含まれる複数のパラグラフのそれぞれに順位が付与される。
【0012】
検索キーワードの入力が受付けられる。受付けられる検索キーワードは入力装置を用いてユーザが入力するキーワード(単語,フレーズ)そのものであってもよいし,これに代えて,または加えて,入力されたキーワードに関連するキーワードを用いてもよい。たとえば,類似語辞書をあらかじめ用意しておき,入力されたキーワードに類似するキーワードも,入力されたキーワードとともに検索キーワードの一つとすることができる。質問文の入力を受付け,受付けられた質問文から抽出される単語を,検索キーワードとしてもよい。
【0013】
検索キーワードは複数存在する。一つの検索キーワードのみでは複数の文章体の中から精度良く特定の文章体を見つけ出すことが困難であるからである。
【0014】
複数の検索キーワードは,それぞれが異なる重要度を持つ。複数の検索キーワードを用いて,複数の文章体の中から検索キーワードに合致する文章体を見つけ出す場合,その複数の検索キーワードは,一般に,そのすべてが同じレベル(重要視される程度,着目の程度が同じ)でなく,軽重が存在するからである。一例としては,受付けられた検索キーワードの受付順が早いほど大きな重要度が検索キーワードに与えられる。
【0015】
処理対象の複数の文章体が,文章体に含まれる検索キーワードの種類数にしたがって,グループ分けされる。たとえば,5種類(5つ)の検索キーワードが受付けられた場合,5種類の検索キーワードのすべてを含む文章体グループ,4種類の検索キーワードを含む文章体グループ,3種類の検索キーワードを含む文章体グループなどに,複数の文章体がグループ分けされる。
【0016】
各グループのそれぞれには,同数の検索キーワード種類数を持つ文章体が含まれる。この各グループのそれぞれにおいて,各グループに含まれる文章体が,上述した検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えられる。たとえば,4種類の検索キーワードを含む2つの文章体が存在する場合,より重要度が大きい検索キーワードを含む文章体が上位とされる。
【0017】
この発明によると,検索キーワード種類数が大きい順に上記グループが並べられ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べられることによって把握される順位が,処理対象の複数の文章体のそれぞれに付与される。文章体中に存在する検索キーワード種類数が大きい文章体,すなわち複数の検索キーワードを網羅している文章体ほど,高い順位が付与される。ユーザの検索要求(これが複数の検索キーワードに現れる)を満たす程度が高い記事に,より高い順位が付与される。
【0018】
さらに,同一の検索キーワード種類数を持つ複数の文章体については,各文章体に含まれる検索キーワードの重要度に基づく順位付けが行われる(グループ内順位付け)。たとえば,受付けの順番が早い検索キーワードを含む文章体に高い順位が付与される。ユーザの検索キーワード自体に対する要望(重要視する程度)が,順位に反映される。
【0019】
最も大きな重要度の検索キーワードを含む文章体については,それ以外の文章体よりも高順位を付与するようにしてもよい。一実施態様では,最も大きな重要度の検索キーワードを含む文章体について,その文章体に含まれる他の検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,この並び順に順位を付与する優先順位付け手段がさらに備えられる。この場合,グループ内並び替え手段による同一グループに含まれる文章体の並替え,および順位付け手段による順位付けは,優先順位付け手段によって順位付けされた文章体以外の文章体に対して行われ,かつ優先順位付け手段によって付与された順位を超えない順位とされる。最も大きな重要度,たとえば,受付けられた複数の検索キーワードのうち最初に受付けられた検索キーワードを含む文章体(ユーザが最も重要視する検索キーワードを含む文章体)に,高順位が付与される。
【0020】
一実施態様では,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,すべての処理対象の文章体の数を基準とした,文章体中の検索キーワードの存在割合を表す出現度を算出する出現度算出手段,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,文章体中における検索キーワードの集中の程度を表す密度を算出する密度算出手段,複数の文章体のそれぞれにおいて,複数の検索キーワードのそれぞれについて算出された出現度と密度を乗算し,乗算によって得られた値を文章体ごとに加算することによって文章体重要度を算出する文章体重要度算出手段をさらに備え,上記グループ内並び替え手段は,同一グループ内において検索キーワードの重要度に基づく複数の文章体の並び替えができずに同一順の複数の文章体が存在する場合に,さらに,上記文章体重要度算出手段によって算出された文章体重要度が大きい順に,その複数の文章体を並び替える。
【0021】
特定の文章体における特定の検索キーワードの出現度は,一実施態様では「特定文章体に含まれている特定キーワードの数/処理対象文章体のすべてにおける特定キーワードの存在平均値」によって算出される。ここで「処理対象文章体のすべてにおける特定キーワードの存在平均値」は,「処理対象文章体のすべてに含まれている特定キーワードの数/処理対象文章体の数」によって算出される。
【0022】
特定の文章体における特定の検索キーワードの密度は,一実施態様では「特定文章体に含まれる特定キーワードの数/特定文章体の文字数」によって算出される。
【0023】
複数の検索キーワードについて平均的に出現度と密度との乗算値が大きい文章体に,大きな文章体重要度が対応づけられる。検索キーワードを適度に含み,かつ冗長でない文章体に大きな文章体重要度が対応付けられるので,一のグループ内においてよりバランスのとれた文章体を高い順位に位置づけることができる。
【図面の簡単な説明】
【0024】
【図1】第1実施例の記事特定システムによって算出される値および結果を,表形式にまとめて示す。
【図2】第1実施例の記事特定システムが処理対象とする記事を模式的に示す。
【図3】第1実施例の記事特定システムの電気的構成を示すブロック図である。
【図4】第1実施例の記事特定システムの機能ブロック図を示す。
【図5】第1実施例の記事特定システムの処理の流れを示すフローチャートである。
【図6】重要度算出処理の流れを示すフローチャートである。
【図7】第1実施例の記事特定システムが処理対象とする記事中のパラグラフを模式的に示す。
【図8】記事の要約を模式的に示す。
【図9】変形例における,第1実施例の記事特定システムによって算出される値および結果を,表形式にまとめて示す。
【図10】変形例における,重み重要度算出処理の流れを示すフローチャートである。
【図11】第2実施例の記事特定システムの機能ブロック図を示す。
【図12】第2実施例の記事特定システムの処理の流れを示すフローチャートである。
【図13】順位付与処理の流れを示すフローチャートである。
【図14】第2実施例の記事特定システムの処理に用いられるデータを示す。
【図15】網羅フラグが数値に変換される様子を示す。
【図16】第3実施例の記事特定システムの処理の流れを示すフローチャートである。
【図17】第1検索キーワード優先順位付与処理の流れを示すフローチャートである。
【図18】順位付与処理の流れを示すフローチャートである。
【実施例】
【0025】
(第1実施例)
第1実施例の記事特定システムは,入力される検索キーワードに応じた検索結果(回答)として適していると考えられる順番に,多数の記事を順位付けするシステムである。記事特定システムが処理対象とする記事は,たとえば,新聞社または通信社が提供している多数のニュース記事である。この場合,多数のニュース記事の中から検索キーワードに応じた検索結果として適している記事が,記事特定システムによって順位付けされる。
【0026】
図1は,第1実施例の記事特定システムによって算出される値および結果を,表形式にまとめて示すものである。図2は記事特定システムが処理対象とする記事を,模式的に示すものである。記事特定システムの詳細なハードウェア構成および処理は後述することにして,記事特定システムが処理対象するデータ(記事),記事特定システムによって算出される値および結果(処理内容)の概略について説明する。
【0027】
たとえばニュース記事の場合,同一の事実(たとえば,首脳会談の開催の事実)について,複数の新聞社または通信社によって,多数の記者等により多数の記事がつくられて配信等される。第1実施例の記事特定システムは,たとえば,同一の事実について書かれた多数のニュース記事の中から,良質のニュース記事を見つけ出すために用いることができる。
【0028】
記事特定システムが検索対象とする記事は,その数によるが,あらかじめ絞込みのための処理を事前に行うことができる。たとえば,インターネット上において利用可能な検索エンジン(サーチエンジン)が用いられて,検索キーワードを含む複数の記事が抽出される。もちろん,検索エンジンは記事特定システムが処理する記事数を少なくするために用いられるものであるから,必ずしも検索エンジンを用いた事前の絞込み処理を行う必要はないのは言うまでもない。
【0029】
第1実施例では,分かりやすくするために,記事特定システムの処理対象の記事は,記事A〜記事Jの10個の記事であるとする。記事特定システムは,記事A〜記事Jの10個の記事について,検索キーワードに応じた検索結果(回答)として適していると考えられる順番に順位付けを行う。得られた順位に応じて,たとえば上位3つの記事のみを記事特定システムのユーザに示すようにしてもよいし,最も高い順位の記事のみを示すようにしてもよい。各記事のタイトルのみを順位通りに並べてユーザに示すようにしてもよい。もちろん,記事特定システムの処理対象の記事のすべてを,順位通りの順番に並べてユーザに示すようにしてもよい。
【0030】
記事特定システムでは,検索キーワードが入力されることを前提とする。検索キーワードは,単語であっても,文章(質問文等)の一部であってもよい。文章の場合には,たとえばN−gramによって入力文章から複数のキーワードが抽出され,抽出された複数のキーワードが検索キーワードとして用いられる。検索キーワードは,一つの単語のみを用いる場合よりも,複数の単語を用いる方が,検索キーワードに適する(マッチする)記事を検索しやすい。好ましくは,検索キーワードとして複数の単語が用いられる。類似語辞書(データベース)を用意しておき,検索キーワードとして入力された単語が一つの単語である場合に,その単語に類似する単語も検索キーワードに含ませるようにしてもよい。たとえば,「首相」のみが検索キーワードとして入力された場合には,記事特定システムは,「総理大臣」,「麻生」等も検索キーワードとする。もちろん,検索キーワードとして入力された単語が2以上の複数の単語である場合にも,類似語辞書を用いて,入力単語のそれぞれの類似語を検索キーワードに含ませてもよいのは言うまでもない。またN−gramによって抽出されたキーワードの組合せ(たとえば,「麻生首相」など)を検索キーワードに含ませるようにしてもよい。
【0031】
図1および図2を参照して,この実施例では,3つの単語(「○○○」,「△△△」および「××××」)が検索キーワードとして用いられている。3つの検索キーワードのそれぞれについて,処理対象の記事A〜記事Jのそれぞれを対象にして,出現度,密度および重要度が算出される。
【0032】
出現度とは,すべての検索対象記事の中において,特定の検索キーワードが,どの程度の割合で特定記事の中に含まれているのかを表す値(数値)である。出現度は,次式によって算出される。
【0033】
出現度=特定記事に含まれる特定キーワードの数/すべての処理対象記事における特定キーワードの存在平均値 ・・・式1
【0034】
「特定記事に含まれる特定キーワードの数」,たとえば記事Aに含まれる特定キーワード「○○○」の数は,記事Aに含まれるキーワード「○○○」の数をカウントすることによって得られる。「すべての処理対象記事における特定キーワードの存在平均値」,たとえば検索対象記事A〜Jの10個の記事における特定キーワード「○○○」の存在平均値は,検索対象記事A〜Jのすべてに含まれる特定キーワード「○○○」の数をカウントし,これを,すべての検索対象記事の数,ここでは10によって除算することによって得られる。
【0035】
密度とは,検索対象記事のそれぞれにおいて,特定の検索キーワードが,どの程度集中して存在しているかを表す値(数値)である。密度は次式によって算出される。
【0036】
密度=特定記事に含まれる特定キーワードの数/特定記事の文字数 ・・・式2
【0037】
「特定記事に含まれる特定キーワードの数」,たとえば記事Aに含まれる特定キーワード「○○○」の数は,記事Aに含まれるキーワード「○○○」の数をカウントすることによって得られる。「特定記事の文字数」,たとえば記事Aの文字数は,記事Aの文字数をカウントすることによって得られる。
【0038】
特定記事における特定キーワードについて,上述した出現度および密度が算出されると,その特定記事における特定キーワードについての重要度が,出現度および密度を用いて算出される。特定記事における特定キーワードについての重要度は次式によって算出される。
【0039】
特定記事における特定キーワードについての重要度
=出現度×密度 ・・・式3
【0040】
出現度によって,すべての検索対象記事の数を基準とする,特定記事中の特定キーワードについての存在割合が分かる。密度によって,特定記事それぞれを基準とする,特定キーワードの集中の程度が分かる。出現度および密度を乗算した結果である特定記事における特定キーワードについての重要度は,特定キーワードについて,複数の検索対象記事の全体に占める割合と,検索対象記事自体に占める割合のいずれもが考慮された値になる。
【0041】
たとえば,長い文章によって構成された記事と,短い文章によって構成された記事を考える。長い文章によって構成された記事には検索キーワードが多数含まれる可能性が高くその場合出現度は大きくなるが,検索キーワードの密度としては低い値が得られる可能性が高い。他方,短い文章によって構成された記事は長い文章によって構成された記事に比べると出現度は小さくなる可能性が高いが,検索キーワードの密度として高い値が得られることがある。すなわち,コンパクトな文章中に効率よく検索キーワードが用いられている記事であれば,特定記事における特定キーワードについての重要度は大きい値になりやすい。重要度が大きい記事は,検索キーワードを適度に含み,かつ冗長なものでない可能性が高い。このような観点から,記事特定システムは記事の良否判断(順位付け)を行う。
【0042】
もっとも,特定記事における一の検索キーワードについての重要度が大きい記事であっても,その特定記事における他の検索キーワードについての重要度は低い記事も存在する。図1に示すように,記事特定システムは,複数の検索キーワードのそれぞれについて上述の特定記事における特定キーワードについての重要度を算出し,検索キーワードごとに算出される重要度を記事のそれぞれについて加算したものを,記事重要度として算出する。記事重要度が大きい順に,検索対象の記事の順位付けが行われる。複数の検索キーワードについて,平均的に(バランス良く)重要度が大きい記事に,高順位が付与される。
【0043】
図3は,記事特定システムの電気的構成を示すブロック図である。図4は,記事特定システムにおいて複数の記事の順位付けが行われるまでの処理をブロック図によって示すものである。図5および図6は記事特定システムの処理の流れを示すフローチャートである。記事特定処理は,図5および図6に示すフローチャートの処理(記事特定プログラム)をコンピュータに実行させることによって実現させることもできるし,図4に示す各ブロック図の機能を達成するハードウェアによっても実現することができる。この実施例では,記事特定プログラムに基づく記事特定処理を説明する。
【0044】
記事特定システムはコンピュータ・システムによって構成される。図3を参照して,記事特定システムは,システムの全体を統括的に制御するCPU(図示略),ならびにデータおよびプログラムを一時的に記憶するメモリ2を含む処理装置1を備えている。処理装置1に,検索キーワード,ユーザによる指示等を入力するための入力装置3,順位付けされた記事等を表示するための表示装置4,コンピュータ・システムを記事特定システムとして動作させるためのプログラム(記事特定プログラム)およびデータ,オペレーティング・システム等を記憶するハードディスク5,ならびに通信装置6を備えている。通信装置6を通じてネットワーク接続される記事データベース7に,記事特定システムが検索対象とする多数の記事が記憶されている。記事データベース7に記憶されている多数の記事が通信装置6を介してダウンロードされてハードディスク5に記憶される。ダウンロードされた記事を処理対象にして,記事特定処理が行われる。
【0045】
入力装置3が用いられて記事特定処理のためのプログラムの起動指示(実行プログラムの起動指示)が入力されると,ハードディスク5から記事特定プログラムおよびデータが読み出されて処理装置1のメモリ2に読込まれ,CPUによって実行される。
【0046】
図5を参照して,はじめに複数の検索キーワードが入力装置3が用いられて入力される(ステップ11)。上述したように,入力された検索キーワードが一つの場合には,類似語辞書を用いて,入力された検索キーワードと,その検索キーワードに類似するキーワードとを,検索キーワードとして用いてもよい。
【0047】
入力された複数の検索キーワードにしたがって,記事データベース7に記憶されている多数の記事の中から,複数の検索キーワードのいずれかを含む複数の記事が記事特定システムにダウンロードされる(ステップ12)。上述したように,この処理は,一般的な検索エンジン(サーチ・エンジン)を利用することができる。もちろん,記事データベース7に記憶されている多数の記事のすべてをダウンロードしてもよい。
【0048】
複数の記事(記事データ)のそれぞれを特定するための記事カウンタiおよび複数の検索キーワードのそれぞれを特定するための検索キーワード・カウンタjが,初期化される(ステップ13)。
【0049】
複数の記事のうちの一つ(第1記事)における,複数の検索キーワードのうちの一つ(第1キーワード)についての特定記事における特定キーワードについての重要度算出処理が行われる(ステップ14,図6)。
【0050】
特定記事における特定キーワードについての重要度は,出現度と密度を乗算することによって算出される(式3)。図6を参照して,上述した式1に基づいて,第1記事における第1キーワードの出現度が算出され(ステップ31),式2に基づいて第1記事における第1キーワードの密度が算出される(ステップ32)。算出された出現度と密度が乗算されることによって,第1記事における第1キーワードについての重要度が算出される(ステップ33)。
【0051】
図5に戻って,すべての検索キーワードについての処理が終了していない場合(ステップ15でNO),検索キーワード・カウンタjがインクリメントされる(ステップ16)。第1記事における第2検索キーワードについての重要度の算出に進む(ステップ14)。
【0052】
第1記事におけるすべての検索キーワードについての重要度算出が終了すると(ステップ15でYES ),第1記事についての重要度(記事重要度)が算出される(ステップ17)。記事重要度は,第1記事におけるすべての検索キーワードのそれぞれについて算出された重要度を加算することによって,得られる(図1参照)。
【0053】
すべての記事についての重要度算出処理が終了したかどうかが判断される(ステップ18)。重要度算出処理を終えていない記事が存在する場合(ステップ18でNO),記事カウンタiがインクリメントされ(ステップ19),かつ検索キーワード・カウンタjが初期化される(ステップ20)。第2記事においても,すべての検索キーワードについての重要度の算出が終了するまで,重要度算出処理が繰り返される。
【0054】
すべての記事について,すべての検索キーワードの重要度の算出が終了すると(ステップ18でYES ),記事ごとに算出された記事重要度が大きい順番に,記事のそれぞれに順位がつけられる(ステップ21)。
【0055】
たとえば,順位付けされた順番で,記事中のタイトルを,表示装置4の表示画面上に一覧に表示したり,最も高い順位の記事を表示装置4の表示画面上に表示したりすることによって,記事特定システムによる処理結果(出力)がユーザに示される。
【0056】
すべての検索キーワードが考慮された上で,検索キーワードの出現度が高く,かつ検索キーワードの密度が高い記事が高順位となる。複数の記事の中から,検索キーワードに沿う比較的良質な記事を見つけることができる。
【0057】
上述した実施例では,複数の記事の中から比較的良質の記事を見つける処理を説明したが,同様にして,一つの記事(文書)に含まれる複数のパラグラフの中から,検索キーワードの出現度が高く,かつ検索キーワードの密度が高いパラグラフを見つけることもできる。図7を参照して,この場合,記事特定システム(パラグラフ特定システムと言ってもよい)の処理対象は,記事(文書)に含まれるパラグラフ単位の文章部分となる。パラグラフ重要度(記事重要度に対応する)が算出されて,パラグラフ重要度が大きい順番にパラグラフのそれぞれに順位がつけられる。
【0058】
パラグラフ重要度が大きい数個のパラグラフのみを,記事(文章)の代表とすることによって,記事の要約を得ることができる。たとえば,記事Aがパラグラフa〜dの4つのパラグラフを含み,このうちパラグラフaおよびcが高順位(いずれかが一位で,いずれかが二位)であったとする。この場合,図8に示すように,パラグラフaおよびcのみを含む文書を,記事Aの要約としてユーザに提示(表示装置4の表示画面上に表示)してもよい。高順位のパラグラフは検索キーワードに沿った文章部分を含み,かつコンパクトにまとめられている可能性が高く,記事の要約として適している可能性が高い。少ない文字数で記事内容を把握することができる。
【0059】
もちろん,複数の記事の中から比較的良質の記事を見つける処理を行い,それに続けて,見つかった良質な記事について,パラグラフ重要度の高いパラグラフをユーザに提示するようにしてもよい。
【0060】
パラグラフよりもさらに短い文章単位,たとえば,「。」によって区切られる一文章について,上述と同様に順位付けを行ってユーザに提示するようにしてもよい。
【0061】
変形例
上述した実施例では,検索キーワードのそれぞれについて出現度および密度を算出し,出現度と密度の乗算結果を,特定記事における特定キーワードについての重要度と位置づけている。変形例では,検索キーワードに重みが付与され,出現度および密度にしたがって算出された重要度に対して重付けが行われた値(以下,「重み重要度」と呼ぶ)が,上述した実施例の「重要度」に代えて用いられる。
【0062】
図9は,図1に対応するもので,記事特定システムによって,検索キーワードのそれぞれについて重み重要度が算出される例を示している。図10は図6に対応するもので,記事特定システムによる重み重要度算出処理を示している。図10および図6を比較して,重み重要度を用いる場合,出現度と密度の乗算結果(「重要度」)に,さらに検索キーワードについての重みが乗算される(重付けされる)点が異なる(ステップ34)。
【0063】
図9を参照して,検索キーワードのそれぞれに重みが付与される。これは,複数の検索キーワードのすべてが,ユーザにとって必ずしも均等に重要視されるわけではなく,複数の検索キーワード間には軽重が存在することがある,という事実に着目したものである。
【0064】
ユーザが入力した質問文から抽出される複数のキーワードが検索キーワードとして用いられる例を考える。たとえば,「麻生首相はG20でIMFの資金強化を提案した?」という質問文が入力されたとすると,「麻生首相」(または「麻生」および「首相」),「G20」,「IMF」,「資金強化」および「提案」という5つのキーワードが抽出され,この5つのキーワードが検索キーワードとされる。ここで,一般に,質問文を入力するユーザは,重要視するキーワードを質問文の先頭に入力する傾向がある。したがって,検索キーワードの重付けでは,質問文から抽出された順番に(出現の順番に),検索キーワードのそれぞれについて,より大きな重みが付与される。たとえば,5つの検索キーワードの場合,抽出された順番に,「5」,「4」,「3」,「2」および「1」が,5つの検索キーワードそれぞれの重みとされる。3つの検索キーワードの場合であれば,抽出された順番に「3」,「2」,「1」が,3つの検索キーワードのそれぞれの重みとされる。
【0065】
図9を参照して,記事ごとに,3つの検索キーワード「○○○」,「△△△」および「××××」のそれぞれについて算出された重要度に対して,検索キーワードの重みを乗算することによって,重み重要度が算出される。検索キーワードごとに算出された重み重要度を記事のそれぞれについて加算したものが,記事重要度とされる。記事重要度が大きい順に,検索対象の記事の順位付けが行われるのは,上述した実施例と同じである。検索キーワード自体の重みが,記事の順位付けに反映される。検索キーワードの重みは,ユーザが重要視する程度を表す値であるから,ユーザの要望に沿い,かつ比較的良質の記事を見つけることができる。
【0066】
検索キーワードに付与される重みは,検索キーワードの入力の順番(並び順)に応じて付与してもよい。たとえば,検索キーワードの入力欄に,「○○○」,「△△△」,「××××」がこの順番に入力された(表示画面上で左から順に並んでいる)場合に,「○○○」に重み3が,「△△△」に重み2が,「××××」に重み1が,それぞれ付与される。
【0067】
(第2実施例)
図11は,図4に対応するもので,第2実施例の記事特定システムにおいて,複数の記事の順位付けが行われるまでの処理のブロック図を示している。図4に示す第1実施例の記事特定システムについてのブロック図とは,「網羅度算出」のブロックが加えられている点が異なる。第2実施例の記事特定システムもコンピュータ・システムによって構成されるのは,第1実施例の記事特定システム(図3参照)と同じである。
【0068】
特定の検索キーワードについて得られる出現度と密度を乗算することによって特定記事における特定キーワードについての重要度を算出し,それを記事ごとに加算することによって特定の記事についての記事重要度を算出して,記事重要度を記事の評価(順位付け)に用いるのは,上述した第1実施例と同様である。第2実施例では,記事重要度に加えて,記事中に含まれる検索キーワードの数(種類)(順位付けされるべき記事が,複数の検索キーワードをどの程度網羅しているか)が,記事の評価(順位付け)に用いられる。
【0069】
図12および図13は,第2実施例の記事特定システムの処理の流れを示すフローチャートである。図14は第2実施例の記事特定システムにおける処理において,記事中に含まれる検索キーワードの数がどのように用いられるかを説明するためのものである。図12および図13において,図5および図6に示す第1実施例の記事特定システムについてのフローチャートと同一処理には同一符号を付し,重複した詳細な説明は省略する。
【0070】
複数の検索キーワードが入力され(ステップ11),記事データベース7に記憶されている多数の記事の中から,入力された複数の検索キーワードの少なくともいずれかを含む複数の記事が記事特定システムにダウンロードされる(ステップ12)。記事カウンタiおよび検索キーワード・カウンタjが初期化される(ステップ13)。
【0071】
複数の記事のうちの一つ(第1記事)に,複数の検索キーワードのうちの一つ(第1キーワード)が存在するかどうかが判断される(ステップ41)。
【0072】
第1キーワードが第1記事中に存在する場合(ステップ41で「有」),第1記事は第1キーワードを網羅していると扱われる。第1記事における第1キーワードについて網羅フラグが立てられる(ステップ42)。
【0073】
図14を参照して具体的に説明する。複数の検索キーワードが,「○○○」,「△△△」,「××××」,「□□□」,「☆☆☆」であり,この順番に入力されたとする(変形例において説明したように,質問文から抽出された順番であってもよい)。すなわち,図14に示す5つの検索キーワード「○○○」,「△△△」,「××××」,「□□□」,「☆☆☆」は,この並び順に重要視されている(大きい重要度を持つ)とする。記事A中に,検索キーワード「○○○」が存在するかどうかが判断される。存在する場合,記事Aにおける検索キーワード「○○○」について網羅フラグがオンされる(フラグ「1」が立てられる)。
【0074】
第1キーワードが第1記事中に存在しない場合,網羅フラグは立てられない(ステップ41で「無」)。図14においては「0」によって網羅フラグが立てられていないことが示されている(たとえば,記事Aについての検索キーワード「☆☆☆」を参照)。
【0075】
次に,重要度算出処理が行われる(ステップ14)。第1実施例と同様,式1に基づいて第1記事における第1キーワードの出現度が算出され(ステップ31),式2に基づいて第1記事における第1キーワードの密度が算出される(ステップ32)。算出された出現度と密度が乗算されることによって,第1記事における第1キーワードについての重要度が算出される(図6)。
【0076】
すべての検索キーワードについての処理が終了していない場合(ステップ15でNO),検索キーワード・カウンタjがインクリメントされ(ステップ16),第1記事における第2検索キーワードについての処理に進む(ステップ41,42,14)。
【0077】
すべての検索キーワードについて処理が終わると(ステップ15でYES ),第1記事についての網羅度小計が算出される。
【0078】
図14を参照して,網羅度小計とは,記事中に含まれる検索キーワードの種類数である。たとえば,記事Aは,5種類の検索キーワードのうち4種類の検索キーワードを含んでいる(検索キーワード「○○○」,「△△△」,「××××」および「□□□」に網羅フラグ「1」が立っている)。記事Aについての網羅度小計は「4」となる。
【0079】
網羅度小計が算出された後,記事重要度が算出される(ステップ17)。第1実施例と同様に,第2実施例においても,記事重要度は,第1記事におけるすべての検索キーワードのそれぞれについて算出された重要度を加算することによって,得られる。
【0080】
すべての記事についての処理が終了したかどうかが判断され(ステップ18),処理を終えていない記事が存在する場合(ステップ18でNO),記事カウンタiがインクリメントされ(ステップ19),かつ検索キーワード・カウンタjが初期化される(ステップ20)。第2記事においても,検索キーワードのそれぞれについて網羅フラグのオン/オフ処理(ステップ42)が行われ(図14参照),かつ記事重要度(ステップ17)が算出される。
【0081】
すべての記事について,複数の検索キーワードのそれぞれについての網羅フラグのオン/オフ処理(ステップ42)および記事重要度の算出(ステップ17)が終了すると(ステップ18でYES ),順位カウンタmが初期化された後(m=0)(ステップ22),順位付与処理に進む(ステップ21A)。
【0082】
第2実施例の記事特定システムにおける順位付与処理(ステップ21A)(図13)は,記事ごとに算出された記事重要度が大きい順番に,記事のそれぞれに順位をつける第1実施例の記事特定システムの順位付与処理(図5のステップ21)と異なる。図14を参照しつつ,第2実施例の記事特定システムにおける順位付与処理(ステップ21A)(図13)を説明する。
【0083】
はじめに,検索キーワード種類数カウンタkに検索キーワード種類数が代入される(ステップ51)。図14に示す例では,検索キーワードの種類数は「5」であるので,k=5となる。
【0084】
網羅度小計としてkの値をもつ記事のみが,処理対象とされる(ステップ52)(グループ化処理)。図14を参照して,k=5の網羅度小計をもつ記事(すなわち,5種類(5つ)の検索キーワードのすべてを含む記事)は,記事A〜記事Jに存在しない(ステップ53でNO)。この場合,検索キーワード種類数カウンタkがデクリメントされて(ステップ54,ステップ55でNO)(k=4),再度同じ処理が行われる(ステップ52,53)。
【0085】
記事A〜記事Jには,k=4の網羅度小計を持つ記事(すわなち,4種類の検索キーワードを含む記事)が存在する(記事A,記事Bおよび記事E)。記事A,記事Bおよび記事Eの3つの記事のみを対象とした順位付け処理に進む(ステップ53でYES )。
【0086】
網羅フラグの数値変換処理が行われる(ステップ56)。
【0087】
図14を参照して,上述のように,網羅フラグは,記事のそれぞれについて,検索キーワードごとにオン/オフされる。また,複数の検索キーワードは,上述のように,重要視されている順番(入力された順番)(検索キーワードの重要度の大きい順番)に並べられている。したがって,重要視されている順番に並べられている複数の検索キーワードのそれぞれのフラグのオン/オフを,そのまま数値として用いることによって,記事中に重要な検索キーワードが含まれているかどうかを,数値によって表すことができる。
【0088】
図15には,図14に示すk=4の網羅度小計を持つ記事A,記事Bおよび記事Eについて,網羅フラグを数値(分かりやすくするために,10進数によって示す)に変換する様子を示している。数値として扱われた状態の網羅フラグを,以下「数値化網羅度」と呼ぶ。
【0089】
記事Aの網羅フラグの並びは11110であるので,数値化網羅度(10進数表記)は「30」となる。記事Bの網羅フラグの並びは01111であり,数値化網羅度は「15」となる。記事Eの網羅フラグの並びは11110であり,数値化網羅度は「30」になる。
【0090】
数値化網羅度の大きい記事は,小さい記事よりも重要視される検索キーワードを含む。数値化網羅度の大きい順に記事が並び替えられる。さらに,同一の数値化網羅度を持つ記事が複数存在する場合には,それらの記事は,記事重要度(ステップ17)が大きい順番に並び替えられる(ステップ57)。
【0091】
記事A,記事B,記事Eの場合,記事Aおよび記事Eの数値化網羅度が「30」,記事Bの数値化網羅度が「15」であるから,記事AEBの順番,または記事EABの順番に並び替えられる。記事Aが先頭か,記事Eが先頭かは,記事Aおよび記事Eのそれぞれについて算出されている記事重要度(ステップ17)に基づく。
【0092】
順位カウンタmがインクリメントされ(m=1)(ステップ58),並び順の先頭(順位が付けられていないもの)の順位がmとされる(ステップ59)。すなわち,記事A(または記事E)に順位「1」が付与される。その後,順位カウンタmがインクリメントされ(ステップ60でNO,ステップ58)(m=2),並び順が2番目の記事(記事E(または記事A))に対して,次の順位「2」が付与される(ステップ59)。同様にして,記事Bに順位「3」が付与される。
【0093】
k=4の網羅度小計を持つ記事のすべてについて順位が付与されると(ステップ60でYES ),検索キーワード種類数カウンタkがデクリメントされる(ステップ54)。すなわち,k=3の網羅度小計を持つ記事,すなわち5種類の検索キーワードのうち3種類の検索キーワードを持つ記事を対象にして,上述と同様に順位付けが行われる。
【0094】
3種類の検索キーワードを持つ記事の順位は,4種類の検索キーワードを持つ記事の順位を超えることはない。3種類の検索キーワードを持つ記事の最上位の記事は,4種類の検索キーワードを持つ記事の最下位(上述の場合,記事B)に付与された順位(3位)の次の順位,すなわち順位「4」が付与されることになる(ステップ58,59)。
【0095】
すべての記事についての順位付けが終了すると(ステップ55でYES ),記事特定システムの処理が終了する。第1実施例と同様に,順位付けされた順番で,記事中のタイトルを表示装置4の表示画面上に一覧に表示したり,最も高い順位の記事を表示装置4の表示画面上に表示したりすることによって,記事特定システムによる処理結果(出力)がユーザに示される。
【0096】
第2実施例の記事特定システムでは,検索キーワード種類を多く含む記事ほど,すなわち,多くの種類の検索キーワードを網羅している記事ほど高い順位が付与される。ユーザの検索要求(これが複数の検索キーワードに現れる)を全体的に満たす程度が高い記事に,より高い順位を付与することができる。
【0097】
同じ種類数の検索キーワードを含む記事が複数存在する場合には,重要視される検索キーワードを含む記事(数値化網羅度が大きい記事)ほど,高い順位が付与されるので,ユーザが重要視する程度も順位に反映される。さらに,数値化網羅度を用いても順位付けできないときには,記事重要度が用いられて順位付けされるので,検索キーワードに沿う比較的良質な記事に高い順位を付与することができる。
【0098】
(第3実施例)
図16から図18は,第3実施例の記事特定システムの処理の流れを示すフローチャートである。第3実施例の記事特定システムは,複数の検索キーワードのうち,最初に入力された検索キーワード(最も重要視されている検索キーワード)(第1検索キーワード)を含む記事について優先的に順位を付し,その後に第1検索キーワードを含まない記事について順位を付与する点が,包含されている検索キーワードの種類数が多い記事程高い順位を付与する第2実施例と異なる。図16〜図18において,図12および図13に示す第2実施例の記事特定システムについてのフローチャートと同一処理には同一符号を付し,重複した詳細な説明は省略する。第2実施例において用いた図14を参照して,第3実施例の記事特定システムの処理を説明する。
【0099】
すべての記事について,複数の検索キーワードのそれぞれについての網羅フラグのオン/オフ処理(ステップ42)および記事重要度の算出(ステップ17)が終了すると(ステップ18でYES ),順位カウンタmが初期化された後(m=0)(ステップ22),第1検索キーワード優先順位付与処理に進む(ステップ23)。
【0100】
図17を参照して,第1検索キーワード優先順位付与処理について説明する。
【0101】
複数種類の検索キーワードのうち,最初に入力された検索キーワード(これが,第1検索キーワードである)を含む記事のみが処理対象とされる(ステップ71)。
【0102】
図14を参照して,複数の検索キーワードが,「○○○」,「△△△」,「××××」,「□□□」,「☆☆☆」であり,この順番に入力されたとする(質問文から抽出された順番であってもよい)。この場合,第1検索キーワードは「○○○」である。記事A,記事Cおよび記事Eに,第1検索キーワード「○○○」が含まれているので(網羅フラグが「1」),これらの3つ記事ACEが,処理対象とされる。
【0103】
第1検索キーワードが含まれている記事が存在する場合(ステップ72でYES ),第1検索キーワードを含む記事について,優先的に順位付与処理が行われる。第2実施例と同様に,網羅フラグが数値変換され(ステップ56),数値化網羅度の大きい順に記事が並べられる。同一の数値化網羅度を持つ記事が複数存在する場合には,それらの記事は,記事重要度(ステップ17)が大きい順番にさらに並び替えられる(ステップ57)。
【0104】
図14を参照して,記事A,記事C,記事Eの場合,記事Aおよび記事Eの数値化網羅度が「30」,記事Cの数値化網羅度が「25」であるから,記事AECの順番,または記事EACの順番に並び替えられる。記事Aが先頭か,記事Eが先頭かは,記事Aおよび記事Eのそれぞれについて算出されている記事重要度(図5のステップ17)に基づく。
【0105】
順位カウンタmがインクリメントされ(m=1)(ステップ58),並び順の先頭(順位が付けられていないもの)の順位がmとされる(ステップ73)。すなわち,記事A(または記事E)に順位「1」が付与される。その後,順位カウンタmがインクリメントされ(ステップ74でNO,ステップ58)(m=2),並び順が2番目の記事(記事E(または記事A))に対して,次の順位「2」が付与される(ステップ73)。同様にして,記事Cに順位「3」が付与される。
【0106】
第1検索キーワードを持つすべての記事についての順位付与が終了する(ステップ74でYES ),または第1検索キーワードを持つ記事が存在しない場合(ステップ72でNO),第1検索キーワード優先順位付与処理が終了する。第1検索キーワードを持たない記事についての順位付与処理に進む(図16のステップ21B)。
【0107】
図18を参照して,第1検索キーワードを持つ記事(すでに順位が付与されている記事AEC)に順位が付与されない点(ステップ81で第1検索キーワードを持つ記事は処理対象から除外される)を除いて,第2実施例の順位付与処理(図13)と同じ処理が行われる。すなわち,検索キーワード種類数カウンタkに検索キーワード種類数が代入され(ステップ51),すでに順位が付与された記事を除いて,網羅度小計としてkの値を持つ記事の有無が判断される(ステップ81)。存在する場合には(ステップ53でYES ),数値化網羅度が大きい順番(同一の数値化網羅度を持つ記事が複数存在すれば,さらに記事重要度の大きい順番)に網羅度小計がkである記事が並べられて,その並び順に順位が付与される(ステップ56〜59)。第3実施例において,第1検索キーワードを持たない記事の順位が,第1検索キーワードを持つ記事の順位を超えることはない。
【0108】
第3実施例においても,すべての記事についての順位付けが終了すると(ステップ55でYES ),記事特定システムの処理が終了する。第1,2実施例と同様に,順位付けされた順番で,記事中のタイトルを表示装置4の表示画面上に一覧に表示したり,最も高い順位の記事を表示装置4の表示画面上に表示したりすることによって,記事特定システムによる処理結果(出力)がユーザに示される。
【0109】
第3実施例の記事特定システムでは,第1検索キーワード(典型的には,最初に入力された検索キーワード)を含む記事に対して,優先的に,高い順位が付与される。複数種類の検索キーワードが入力される場合,最初に入力される検索キーワードは,それよりも後に入力される検索キーワードに比べてユーザが重要視する程度が高いことが多く,第3実施例では,そのような第1検索キーワードを含む記事により高い順位が付与される。
【0110】
第1実施例の記事特定システムは,記事の内容そのもの(検索キーワードを適度に含み,かつ冗長なものでない)(コンパクトな文章中に効率よく検索キーワードが用いられているかどうか)に着目して,複数の記事を順位付けする。第2実施例の記事特定システムでは,複数の検索キーワードを網羅している程度に着目して,複数の記事を順位付けする。第3実施例の記事特定システムでは,最初に入力された(最も着目すべき)検索キーワード(第1検索キーワード)を含む記事を最重要視して,複数の記事を順位付けする。このため,同じ記事を処理対象とした場合,第1,第2,第3実施例の記事特定システムは,異なる結果(順位付け)を生じさせる。
【0111】
第1,第2,または第3実施例の記事特定システムのいずれを用いるかは,たとえば,順位付けの対象となる記事が格納されているデータベース等にしたがって決められる。同一内容の複数の記事(たとえば,同一の事件に対する複数の報道記事)が処理対象であれば,第1実施例の記事特定システムを用いると,複数記事の中から,より分かりやすい記事が抽出されやすい。特定技術分野の記事(論文データベースなど)が処理対象の記事(カテゴリがある程度定まっている記事)であれば,第2実施例の記事特定システムを用いると,検索要求にマッチする記事をピンポイントで見つけやすくなる。多種多少な記事(たとえば,ホームページなど)が処理対象であれば,第3実施例の記事特定システムを用いると,所望の記事の絞込みを行いやすい。このように,第1,第2および第3実施例の記事特定システムは,処理対象の記事内容(データベースの特性)に応じて,適宜選択されて用いられる。
【0112】
上述した実施例(第1実施例の変形例,第2実施例,および第3実施例)において,複数種類の検索キーワードは,入力順(または質問文から抽出された順番)に重要視されていると扱われているが,もちろん,他のやり方によって複数種類の検索キーワードの重要視の程度の大小関係(重要度)を定めてもよい。複数種類の検索キーワードの重要度は,たとえば以下のように定めることもできる。
【0113】
(1)入力された順番が遅いほど,大きな重要度を対応づける。
たとえば,英語表現による質問文から抽出される複数の単語を検索キーワードに用いる場合である。「How old is Obama ?」という質問文の場合,「How」,「old」,「is」および「Obama」の4つの単語が検索キーワードとなる。この場合,「Obama」,「is」,「old」,「How」の順番で,検索キーワードに対して大きな重要度(重要視の程度の大小関係)が対応づけられる。
【0114】
(2)固有名詞辞書をあらかじめ作成しておき,入力された検索キーワードが固有名詞辞書に登録されている固有名詞(たとえば,「obama 」)であれば,その検索キーワードに対して最大重要度を対応づける。固有名詞以外の単語は,入力順等にしたがって重要度を対応づける。
【0115】
(3)検索キーワードのそれぞれについて,ユーザの入力(指示)によって,重要度を対応づける。検索キーワードの入力とともに,入力された検索キーワードの重要度(大小関係)の入力を受け付ける態様である。
【0116】
(4)過去に使用された検索キーワードのそれぞれについて使用履歴を記録しておき,使用回数の多い検索キーワードほど,大きな重要度を対応づける。
【0117】
(5)単語と重要度とを関連付けた辞書をあらかじめ作成しておき,入力された検索キーワードが辞書に登録されている単語の場合には,その検索キーワードに対して辞書中の重要度を対応づける。登録されていない単語であれば入力順等にしたがって重要度を対応づける。
【0118】
(6)処理対象記事中に含まれている検索キーワードの数を数え,数が多い検索キーワードの順に,大きな重要度を対応づける。
【符号の説明】
【0119】
1 処理装置
2 メモリ
3 入力装置
4 表示装置
5 ハードディスク
6 通信装置
7 記事データベース
【特許請求の範囲】
【請求項1】
記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定する装置であって,
複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出する検索キーワード検出手段,
上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出する手段,
検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えるグループ内並び替え手段,および
検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与する順位付け手段,
を備えた文章体特定装置。
【請求項2】
最も大きな重要度の検索キーワードを含む文章体を,その文章体に含まれる他の検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,この並び順に順位を付与する優先順位付け手段をさらに備え,
上記グループ内並び替え手段による同一グループに含まれる文章体の並替え,および順位付け手段による順位付けは,上記優先順位付け手段によって順位付けされた文章体以外の文章体に対して行われ,かつ上記優先順位付け手段によって付与された順位を超えない順位とされる,
請求項1に記載の文章体特定装置。
【請求項3】
複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,すべての処理対象の文章体の数を基準とした,文章体中の検索キーワードの存在割合を表す出現度を算出する出現度算出手段,
複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,文章体中における検索キーワードの集中の程度を表す密度を算出する密度算出手段,および
複数の文章体のそれぞれにおいて,複数の検索キーワードのそれぞれについて算出された出現度と密度を乗算し,乗算によって得られた値を文章体ごとに加算することによって文章体重要度を算出する文章体重要度算出手段をさらに備え,
上記グループ内並び替え手段は,
同一グループ内において検索キーワードの重要度に基づく複数の文章体の並び替えができずに,同一順の複数の文章体が存在する場合に,さらに,上記文章体重要度算出手段によって算出された文章体重要度が大きい順に,その複数の文章体を並び替える,
請求項1または2に記載の文章体特定装置。
【請求項4】
記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定させるためのプログラムであって,
検索キーワード検出手段が,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出し,
検索キーワード種類数算出手段が,上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出し,
グループ内並び替え手段が,上記検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,
順位付け手段が,検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与するように,コンピュータを制御する,コンピュータ読み取り可能なプログラム。
【請求項1】
記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定する装置であって,
複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出する検索キーワード検出手段,
上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出する手段,
検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替えるグループ内並び替え手段,および
検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与する順位付け手段,
を備えた文章体特定装置。
【請求項2】
最も大きな重要度の検索キーワードを含む文章体を,その文章体に含まれる他の検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,この並び順に順位を付与する優先順位付け手段をさらに備え,
上記グループ内並び替え手段による同一グループに含まれる文章体の並替え,および順位付け手段による順位付けは,上記優先順位付け手段によって順位付けされた文章体以外の文章体に対して行われ,かつ上記優先順位付け手段によって付与された順位を超えない順位とされる,
請求項1に記載の文章体特定装置。
【請求項3】
複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,すべての処理対象の文章体の数を基準とした,文章体中の検索キーワードの存在割合を表す出現度を算出する出現度算出手段,
複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,文章体中における検索キーワードの集中の程度を表す密度を算出する密度算出手段,および
複数の文章体のそれぞれにおいて,複数の検索キーワードのそれぞれについて算出された出現度と密度を乗算し,乗算によって得られた値を文章体ごとに加算することによって文章体重要度を算出する文章体重要度算出手段をさらに備え,
上記グループ内並び替え手段は,
同一グループ内において検索キーワードの重要度に基づく複数の文章体の並び替えができずに,同一順の複数の文章体が存在する場合に,さらに,上記文章体重要度算出手段によって算出された文章体重要度が大きい順に,その複数の文章体を並び替える,
請求項1または2に記載の文章体特定装置。
【請求項4】
記憶装置に記憶されている複数の文章体の中から,受付けられた複数の検索キーワードに対する検索結果として適する文章体を特定させるためのプログラムであって,
検索キーワード検出手段が,複数の文章体のそれぞれを処理対象にして,受付けられた複数の検索キーワードのそれぞれについて,検索キーワードの存在の有無を検出し,
検索キーワード種類数算出手段が,上記検索キーワード検出手段によって検出された検索キーワードの存在の有無に基づいて,複数の文章体のそれぞれに存在する検索キーワード種類数を算出し,
グループ内並び替え手段が,上記検索キーワード種類数算出手段によって算出された,複数の文章体のそれぞれの検索キーワード種類数に基づいて,同数の検索キーワード種類数を持つ文章体をグループ化し,同一グループに含まれる文章体を,各文章体に含まれる検索キーワードの重要度に基づいて,重要度の大きな検索キーワードを含む文章体の順に並び替え,
順位付け手段が,検索キーワード種類数が大きい順に上記グループを並べ,かつ一のグループ内においては上記グループ内並び替え手段に基づく順に文章体を並べることによって把握される順位を,処理対象の複数の文章体のそれぞれに付与するように,コンピュータを制御する,コンピュータ読み取り可能なプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2010−152862(P2010−152862A)
【公開日】平成22年7月8日(2010.7.8)
【国際特許分類】
【出願番号】特願2009−143787(P2009−143787)
【出願日】平成21年6月17日(2009.6.17)
【出願人】(300035456)株式会社アイ・ビジネスセンター (2)
【Fターム(参考)】
【公開日】平成22年7月8日(2010.7.8)
【国際特許分類】
【出願日】平成21年6月17日(2009.6.17)
【出願人】(300035456)株式会社アイ・ビジネスセンター (2)
【Fターム(参考)】
[ Back to top ]