説明

集合拡張処理装置、集合拡張処理方法、プログラム、及び、記録媒体

【課題】意味的に同一のカテゴリに含まれる語を選択するのに好適な集合拡張処理装置等を提供する。
【解決手段】受付部101がシード文字列を受け付ける。検索部102がシード文字列を含む文書のスニペットを得る。セグメント取得部103が当該スニペットをセグメント区切文字列で区切ってセグメントを得る。セグメント要素取得部104がセグメントをセグメント要素区切文字列で区切ってセグメント要素を得る。セグメントスコア計算部105がセグメントのセグメントスコアをセグメント要素の長さの標準偏差から計算する。セグメント要素スコア計算部106がセグメント要素のセグメント要素スコアをシード文字列の位置とセグメント要素の位置との距離とセグメントスコアから計算する。選択部107がセグメント要素スコアに基づいてセグメント要素からいずれかをシード文字列の拡張集合に含まれるインスタンスの候補として選択する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、集合拡張処理装置、集合拡張処理方法、プログラム、及び、記録媒体に関し、特に、意味的に同一のカテゴリに含まれる語の獲得に関するものである。
【背景技術】
【0002】
ネットショッピングにおいて、ショッピングサイトで取り扱われる商品はカテゴリ分けされて、ユーザに提示される。例えば、特許文献1には、商品を掲載するページにおいて、商品のカテゴリ“家電商品”、“書籍”、“コンピュータ”等を表示する情報送受信システムが開示されている。ユーザは、これらのカテゴリの中から購入を希望する商品のカテゴリを選択することにより、容易に商品を絞り込むことができる。
【0003】
一方、人名、地名、あるいは、商品名などの固有表現を体系的に構築・維持するには膨大なコストがかかる。そのため、固有表現の意味的関係性を計算機により自動的に獲得する自動獲得手法が盛んに研究されている。例えば、非特許文献1には、分かち書き文から意味的語彙カテゴリを抽出するアルゴリズム(「g−Espressoアルゴリズム」という)が開示されている。また、非特許文献2には、非分かち書き文から意味的語彙カテゴリを抽出するアルゴリズム(「g−Monakaアルゴリズム」という)が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−48226号公報
【非特許文献】
【0005】
【非特許文献1】Mamoru Komachi, Taku Kudo, Masahi Shimbo, and Yuji Matsumoto, "Graph-based analysis of semantic drift in espresso-like bootstrapping algorithms." In Proc. of the EMNLP 2008, pp. 1011-1020, 2008.
【非特許文献2】萩原正人、小川泰弘、外山勝彦、「グラフカーネルに基づく非分かち書き文からの意味的語彙カテゴリの抽出」、言語処理学会第15回年次大会講演論文集、pp.697−700、2009年
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記のようなショッピングサイトにおいて、日々新たな商品が登場するため、手動では商品のカテゴリの登録作業が追いつかなく、多くのユーザが検索する商品であっても、その商品が属するカテゴリが設けられていない場合がある。しかしながら、店舗側にとっては、新たな商品が登場する度に登録すべきカテゴリを調査するのは負担が大きく、登録すべきカテゴリの候補を自動的に選択してもらいたいという要望があった。
【0007】
本発明は、上記のような課題を解決するもので、意味的に同一のカテゴリに属する語の候補を選択するのに好適な集合拡張処理装置、集合拡張処理方法、プログラム、及び、記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の第1の観点に係る集合拡張処理装置は、
シード文字列を受け付ける受付部、
前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索部、
前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得部、
前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得部、
前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算部、
前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算部、
前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択部、
を備えることを特徴とする。
【0009】
また、上記観点に係る集合拡張処理装置において、
前記インスタンスの候補を用いて検索することにより得られたスニペットから、前記抽出されたインスタンスの候補を含むnグラムの接続グラフを生成し、当該接続グラフにおける前記受け付けられたシード文字列の前後の文脈と当該インスタンスの候補の前後の文脈とに基づいて当該シード文字列と当該インスタンスの候補との類似度を計算し、当該類似度に基づいて、当該インスタンスの候補から、当該シード文字列を含む集合を拡張した拡張集合に含めるべきインスタンスを抽出する抽出部
をさらに備えることを特徴とする。
【0010】
また、上記観点に係る集合拡張処理装置において、
前記得られたセグメントのそれぞれについて、当該セグメントに出現するセグメント要素のそれぞれの長さの標準偏差が所定の閾値を超える場合、前記セグメントスコアならびに前記セグメント要素スコアは、当該セグメントに含まれるセグメント要素が前記インスタンスの候補として前記選択部により選択されることがないような値となる
ことを特徴とする。
【0011】
また、上記観点に係る集合拡張処理装置において、
前記得られたセグメントのそれぞれに出現するセグメント要素のそれぞれのセグメント要素スコアは、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との最短距離に対して指数的に減衰する
ことを特徴とする。
【0012】
本発明の第2の観点に係る集合拡張処理方法は、
受付部と、検索部と、セグメント取得部と、セグメント要素取得部と、セグメントスコア計算部と、セグメント要素スコア計算部と、選択部と、を備える集合拡張処理装置が実行する集合拡張処理方法であって、
前記受付部が、シード文字列を受け付ける受付工程、
前記検索部が、前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索工程、
前記セグメント取得部が、前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得工程、
前記セグメント要素取得部が、前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得工程、
前記セグメントスコア計算部が、前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算工程、
前記セグメント要素スコア計算部が、前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算工程、
前記選択部が、前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択工程、
を備えることを特徴とする。
【0013】
本発明の第3の観点に係るプログラムは、
コンピュータを、
シード文字列を受け付ける受付部、
前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索部、
前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得部、
前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得部、
前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算部、
前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算部、
前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択部、
として機能させることを特徴とする。
【0014】
本発明の第4の観点に係るコンピュータ読み取り可能な記録媒体は、
コンピュータを、
シード文字列を受け付ける受付部、
前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索部、
前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得部、
前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得部、
前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算部、
前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算部、
前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択部、
として機能させることを特徴とするプログラムを記録する。
【0015】
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記記録媒体は、コンピュータとは独立して配布・販売することができる。
【発明の効果】
【0016】
本発明によれば、意味的に同一のカテゴリに属する語の候補を選択するのに好適な集合拡張処理装置、集合拡張処理方法、プログラム、及び、記録媒体を提供することができる。
【図面の簡単な説明】
【0017】
【図1】本発明の実施形態に係る集合拡張処理装置と、ショッピングサーバとの関係を示す図である。
【図2】本発明の実施形態に係る集合拡張処理装置が実現される典型的な情報処理装置の概要構成を示す図である。
【図3】実施形態1の集合拡張処理装置の概要構成を説明するための図である。
【図4】検索された文書を説明するための図である。
【図5】セグメントを説明するための図である。
【図6】セグメント要素を説明するための図である。
【図7】セグメントスコア及びセグメント要素スコアを説明するための図である。
【図8】選択されたインスタンスの候補を説明するための図である。
【図9】実施形態1に係る集合拡張処理装置の各部が行う集合拡張処理を説明するためのフローチャート図である。
【図10】実施形態2の集合拡張処理装置の概要構成を説明するための図である。
【図11】接続グラフを説明するための図である。
【図12】抽出されたインスタンスを説明するための図である。
【図13】実施形態2に係る集合拡張処理装置の各部が行う集合拡張処理を説明するためのフローチャート図である。
【発明を実施するための形態】
【0018】
本発明の実施形態に係る集合拡張処理装置100は、図1に示すように、ショッピングサーバ200に接続される。ショッピングサーバ200はインターネット300に接続される。インターネット300には、ユーザが操作する複数の端末装置401、402〜40nが接続されている。ショッピングサーバ200は、インターネット300を介し、端末装置401〜40nに、ショッピングサーバ200に登録されている商品の情報を提示し、端末装置401〜40nから商品の注文を受け付ける。一般的に、ショッピングサーバ200に登録されている商品は、商品の種類に基づいてカテゴリ分けされて、端末装置401〜40nのユーザに提示される。集合拡張処理装置100は、ショッピングサーバ200で扱う商品について集合拡張処理を行い、商品のカテゴリの候補を提示するものである。
【0019】
ここで、「集合拡張」とは、少数の正解セットをシードとして与え、シードと意味的に同一のカテゴリに属する語の集合を獲得するタスクをいう。例えば、キッチン用品の“中華鍋”、“圧力鍋”をシードとした場合、意味的に同一のカテゴリに属する語とは“土鍋”、“雪平鍋”、及び“タジン鍋”等である。すなわち、集合拡張処理装置100は、“中華鍋”、“圧力鍋”がシードとして与えられると、それらと同一のカテゴリ“鍋”に属する語として、“土鍋”、“雪平鍋”や“タジン鍋”等を獲得する。
【0020】
以下、本発明の実施形態に係る集合拡張処理装置100が実現される典型的な情報処理装置500について説明する。
【0021】
(1.情報処理装置の概要構成)
情報処理装置500は、図2に示すように、CPU(Central Processing Unit)501と、ROM(Read only Memory)502と、RAM(Random Access Memory)503と、NIC(Network Interface Card)504と、画像処理部505と、音声処理部506と、DVD−ROM(Digital Versatile Disc ROM)ドライブ507と、インターフェース508と、外部メモリ509と、コントローラ510と、モニタ511と、スピーカ512と、を備える。
【0022】
CPU 501は、情報処理装置500全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。
【0023】
ROM 502には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、所定のプログラムをRAM 503に読み出してCPU 501による当該プログラムの実行が開始される。また、ROM 502には、情報処理装置500全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
【0024】
RAM 503は、データやプログラムを一時的に記憶するためのもので、DVD−ROMから読み出したプログラムやデータ、その他、通信に必要なデータ等が保持される。
【0025】
NIC 504は、情報処理装置500をインターネット300等のコンピュータ通信網に接続するためのものであり、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 501との仲立ちを行うインターフェース(図示せず)により構成される。
【0026】
画像処理部505は、DVD−ROM等から読み出されたデータをCPU 501や画像処理部505が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部505が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され、モニタ511に出力される。これにより、各種のページ表示が可能となる。
【0027】
音声処理部506は、DVD−ROM等から読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ512から出力させる。また、CPU 501の制御の下、情報処理装置500が行う処理の進行の中で発生させるべき音を生成し、これに対応した音声をスピーカ512から出力させる。
【0028】
DVD−ROMドライブ507に装着されるDVD−ROMには、例えば、実施形態に係る集合拡張処理装置100を実現するためのプログラムが記憶される。CPU 501の制御によって、DVD−ROMドライブ507は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 503等に一時的に記憶される。
【0029】
インターフェース508には、外部メモリ509、コントローラ510、モニタ511、及びスピーカ512が、着脱可能に接続される。
【0030】
外部メモリ509には、ユーザの個人情報に関するデータなどが書き換え可能に記憶される。
【0031】
コントローラ510は、情報処理装置500の各種の設定時などに行われる操作入力を受け付ける。情報処理装置500のユーザは、コントローラ510を介して指示入力を行うことにより、これらのデータを適宜外部メモリ509に記録することができる。
【0032】
モニタ511は、画像処理部505により出力されたデータを情報処理装置500のユーザに提示する。
【0033】
スピーカ512は、音声処理部506により出力された音声データを情報処理装置500のユーザに提示する。
【0034】
この他、情報処理装置500は、ハードディスク等の大容量外部記憶装置を用いて、ROM 502、RAM 503、外部メモリ509、DVD−ROMドライブ507に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。
【0035】
以下、上記情報処理装置500において実現される実施形態に係る集合拡張処理装置100の概要構成について、図1乃至13を参照して説明する。情報処理装置500の電源を投入することにより、実施形態に係る集合拡張処理装置100として機能させるプログラムが実行され、実施形態に係る集合拡張処理装置100が実現される。
【0036】
(2.実施形態1の集合拡張処理装置の概要構成)
実施形態1の集合拡張処理装置100は、シード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補を選択するものである。
【0037】
本実施形態に係る集合拡張処理装置100は、図3に示すように、受付部101と、検索部102と、セグメント取得部103と、セグメント要素取得部104と、セグメントスコア計算部105と、セグメント要素スコア計算部106と、選択部107と、から構成される。
【0038】
以下、集合拡張処理装置100が、キッチン商品の鍋のカテゴリに属する語として適当な語(インスタンス)の候補の提示を行う場合を例に説明する。
【0039】
受付部101は、シード文字列を受け付ける。シード文字列とは、例えば、“鍋”のカテゴリに属する語の集合に含まれる正解の語(“中華鍋”や“圧力鍋”等)である。例えば、図4に示すように、ユーザがWEBページの検索エンジンの検索欄601に、全てのシード文字列をスペース区切りで連結させたものをクエリとして入力し、検索ボタン602を押圧する。この場合、受付部101は、検索欄601に入力された“中華鍋”及び“圧力鍋”をシード文字列として受け付ける。なお、検索エンジンの種類は任意である。
【0040】
本実施形態では、CPU 501及びコントローラ510が協働して、受付部101として機能する。
【0041】
検索部102は、受け付けられたシード文字列を含む文書を検索し、スニペットを得る。ここで、スニペットとは、例えば、WEBページの検索エンジンを使用した際に、検索結果として表示されるクエリを含むテキスト部分である。検索部102は、WEBページの検索エンジンに対して、全てのシード文字列をスペース区切りで連結させたものをクエリとして入力し、検索結果の、例えば、上位300件のスニペットのリストを得る。例えば、検索部102は、“中華鍋 圧力鍋”をクエリとして検索エンジンを用いてWEBページの検索を行い、与えられたシード文字列“中華鍋”及び“圧力鍋”を含む図4のスニペット1、2、3〜300(図示せず)を得る。なお、検索部102は、上記のように外部装置を利用して文書を得ることに限らず、内部に検索機能を備えるようにしてもよい。例えば、検索部102は、Web検索APIを使用してスニペットを得ることとしてもよい。
【0042】
本実施形態では、検索部102は、CPU 501及びNIC 504が協働して、検索部102として機能する。
【0043】
セグメント取得部103は、得られたスニペットを所定のセグメント区切文字列で区切ることにより、シード文字列の前後に出現する文字列と、シード文字列とを出現順に並べた文字列からなるセグメントを得る。スニペットは、検索語が含まれるページにおいて当該検索語がどのように用いられているかがユーザにとって一目で分かるように、所定の区切文字列で区切られているのが一般的である。例えば、所定のセグメント区切文字列を“・・・”とする。例えば、セグメント取得部103は、得られたスニペット1、2、3〜300をUnicodeのNFKCにより正規化して、小文字に統一し、セグメント区切文字列“・・・”によって複数の文字列に分割する。そして、セグメント取得部103は、分割された文字列のうち重複している文字列は除外し、残りの文字列をセグメントとして得る。得られたスニペットを小文字に統一することにより、例えば、型番等の文字列が大文字・小文字で統一されていない場合に対応することができる。図5に、セグメント取得部103がスニペット1から得たセグメント1−1〜1−3を示す。
【0044】
なお、セグメント区切文字列は、“・・・”の文字列に限らない。検索部102が使用する検索エンジン又はWeb検索APIが提示するスニペットが、例えば、“−−−”や“##”の文字列で区切られている場合、セグメント区切文字列を“−−−”や“##”の文字列とする。また、セグメントを得る手法は、セグメント区切文字列を用いてセグメントを得る手法に限らない。セグメントは、使用する検索エンジン又はWeb検索APIが提示するスニペットに応じて、適宜取得される。例えば、1つのスニペットが、“・・・”等の記号により区切られずに提示される場合は、当該スニペットを1つのセグメントとする。また、予め、スニペット内のセグメントに相当する部分が箇条書き等で提示される場合は、箇条書きの1行に該当する部分を1つのセグメントとする。
【0045】
本実施形態では、CPU 501がセグメント取得部103として機能する。
【0046】
セグメント要素取得部104は、得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることによりセグメント要素を得る。例えば、所定のセグメント要素区切文字列とは、句読点や記号(“、”、“,”、“。”、“!”、“[”、“]”等)であり、これらのセグメント要素区切文字列によりセグメントを区切り、セグメント要素を得る。例えば、セグメント要素取得部104は、図5のセグメント1−1、1−2、1−3をセグメント要素区切文字列で区切ると、図6のセグメント要素群1−1P(セグメント要素P(i=1〜5))、1−2P(セグメント要素P(i=1〜12))、1−3P(セグメント要素P(i=1〜5))を得る。
【0047】
本実施形態では、CPU 501がセグメント要素取得部104として機能する。
【0048】
セグメントスコア計算部105は、得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算する。ここで、得られたセグメントのそれぞれについて、当該セグメントに出現するセグメント要素のそれぞれの長さの標準偏差が所定の閾値を超える場合、セグメントスコアならびに後述のセグメント要素スコアは、当該セグメントに含まれるセグメント要素がインスタンスの候補として選択部107により選択されることがないような値となるとする。本実施形態では、セグメント要素の長さを、Unicodeの文字数で定義するが、これに限られない。例えば、セグメント要素の長さとして、その他の文字コードにおけるバイト数を採用することも可能である。
【0049】
例えば、図5に示すように、セグメント1−1、1−3は、通常の文を含んでいるが、セグメント1−2は、通常の文を含んでいない。そして、セグメント1−1、1−3に含まれるセグメント要素の長さのばらつきは、セグメント1−2に含まれるセグメント要素の長さのばらつきよりも大きい。すなわち、通常の文を含んでいるセグメントは、一般的に、通常の文を含んでいないセグメントよりも、セグメントに含まれる各セグメント要素の長さが揃っていないという傾向がある。そして、通常の文を含むセグメントには、シード文字列と同じ意味範囲に属するインスタンスが含まれていないことが多いので、インスタンスの候補を得るセグメントとして適当ではない。したがって、以下では、セグメント要素の長さの標準偏差が所定の閾値を越えるセグメントは、インスタンスの候補を得るセグメントから除外することとする。
【0050】
本実施形態では、所定の閾値を5.00とする。また、セグメントスコア計算部105は、セグメント要素の長さの標準偏差が5.00未満の場合は、標準偏差の値そのものを、セグメントスコアとし、標準偏差が5.00以上の場合は、セグメントスコアを5.00とする。
【0051】
図7に、セグメントスコア計算部105が計算したセグメントスコアを示す。図7のテーブルには、シード文字列をクエリとして得た「スニペット701a」と、スニペット701aに含まれる「セグメント702a」と、セグメント702aに含まれる「セグメント要素703a」と、セグメント要素703aの「長さ704a」と、長さ704aの「標準偏差705a」と、標準偏差705aに基づいて計算される「セグメントスコア706a」と、後述するセグメント要素スコア計算部106により計算される「セグメント要素スコア707a」と、が対応づけて記載されている。
【0052】
例えば、セグメントスコア計算部105は、図7の704aに示すように、セグメント1−1に含まれるセグメント要素P(i=1〜5)、セグメント1−2に含まれるセグメント要素P(i=1〜12)、及び、セグメント1−3に含まれるセグメント要素P(i=1〜5)の長さを求める。そして、セグメントスコア計算部105は、図7の705aに示すように、セグメント1−1に含まれるセグメント要素P(i=1〜5)の長さの標準偏差を“5.89”、セグメント1−2に含まれるセグメント要素P(i=1〜12)の長さの標準偏差を“1.34”、セグメント1−3に含まれるセグメント要素P(i=1〜5)の長さの標準偏差を“5.27”と求める。したがって、セグメントスコア計算部105は、図7の706aに示すように、セグメント1−1のセグメントスコアを“5.00”、セグメント1−2のセグメントスコアを“1.34”、セグメント1−3のセグメントスコアを“5.00”と求める。
【0053】
本実施形態では、CPU 501がセグメントスコア計算部105として機能する。
【0054】
セグメント要素スコア計算部106は、得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算する。
【0055】
例えば、前述のように、セグメント要素のそれぞれの長さの標準偏差が所定の閾値を超える場合、セグメント要素スコアを、セグメント要素がインスタンスの候補として選択部107により選択されないような値になるとする。例えば、セグメント要素スコア計算部106は、セグメントスコアが“5.00”の場合は、セグメント要素スコアを“0”とする。一方、セグメントスコアが“5.00”未満の場合は、セグメント要素スコア計算部106は、セグメントにおいて受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離に基づいてセグメント要素スコアを計算する。ここで、セグメントにおいてシード文字列が出現する位置s(j:シード文字列の数)、及びセグメントにおいてセグメント要素が出現する位置pとは、図6に示すように、セグメントにおいて出現順にセグメント要素を並べた時のセグメント内での出現順位であり、距離とは位置sと位置pとの出現順位の差である。すなわち、シード文字列が“中華鍋”及び“圧力鍋”とすると、セグメント1−2においてシード文字列“中華鍋”(P)が出現する位置sは“8”番目であり、シード文字列“圧力鍋”(P)が出現する位置sは“4”番目である。また、セグメント1−2においてセグメント要素“親子鍋”(P)が出現する位置pは“5”番目であり、シード文字列“中華鍋”(P)とセグメント要素“親子鍋”(P)との距離は3となる。
【0056】
そして、セグメント要素スコア計算部106は、セグメント要素スコアSを、セグメントにおいてシード文字列が出現する位置sと、セグメントにおいてセグメント要素が出現する位置pとから、以下の式(数1)に基づいて計算する。この式(数1)によれば、最も近いシード文字列との距離に従い指数的に減衰するスコアが、各セグメント要素のセグメント要素スコアとされる。本実施形態ではα=0.8とする。計算結果を図7のセグメント要素スコア707aに示す。
【0057】
【数1】

上記においては、最も近いシード文字列との距離に従い指数的に減衰するスコアを求めることとしたが、スコアの求め方には様々な変形が可能である。例えば、シード文字列が複数存在する場合に、各シード文字列とセグメント要素との距離をそれぞれ求め、求めた距離の平均値に従い線形的に減衰するスコアを各セグメント要素のセグメント要素スコアとしてもよい。
以上、セグメント内にシード文字列が出現する場合の一例を記載したが、シード文字列の類似語が出現する場合も同様に計算できる。具体的には、“中華鍋”及び“圧力鍋”をシード文字列とした場合に、検索部ではシード文字列に加えてシード文字列の類似語で検索を行うと、“中華なべ”や“圧力なべ”といったシード文字列の類似語が含まれるスニペットが得られる。このような場合には、セグメント要素スコア計算部106において、公知の漢字かな文字変換プログラム等を用いることで、シード文字列の類似語をシード文字列として同様に取り扱うことができる。このように、シード文字列の類似語がセグメント内に出現した場合であっても、数1に従ってセグメント要素スコアSを計算できる。
【0058】
本実施形態では、CPU 501がセグメント要素スコア計算部106として機能する。
【0059】
選択部107は、得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する。ここで、拡張集合とは、集合拡張処理を施した後に得られる集合であり、シード文字列と意味的に同一のカテゴリに含まれる語の集合である。例えば、選択部107は、セグメント要素スコアの値が“0.10”未満のセグメント要素をインスタンスの候補から除外し、残りのセグメント要素をインスタンスの候補として選択する。すなわち、選択部107は、セグメント1−1、1−3から得たセグメント要素のセグメント要素スコアがすべて“0”なので(図7)、セグメント1−1、1−3から得たセグメント要素を候補から除外する。そして、選択部107は、図8に示すように、セグメント1−2から得たセグメント要素のうち、セグメント要素スコアが“0.10”未満の“パスタマシーン”、“その他”、及び、“さらに価格が”のセグメント要素を除外し、残りのセグメント要素を、“中華鍋”及び“圧力鍋”と意味的に同一のカテゴリに含まれるインスタンスの候補として選択する。なお、本実施形態では、1つのスニペットを例に、インスタンスの候補を選択する手法について説明したが、実際には多数のスニペットからセグメント要素を得てセグメント要素スコアを求め、インスタンスの候補を選択する。この場合、同じセグメント要素に、異なるスニペットからそれぞれセグメント要素スコアが求められることがある。特に、シード文字列と意味的に同じカテゴリに含まれるセグメント要素は、複数のスニペットに含まれることが多いと考えられるので、複数のセグメント要素スコアが得られる可能性が高い。したがって、複数のセグメント要素スコアが得られた場合、それらの和や最大値等を当該セグメント要素のセグメント要素スコアの値とする。このように処理することにより、より適当なインスタンスの候補を選択することができる。
【0060】
本実施形態では、CPU 501が選択部107として機能する。
【0061】
(3.実施形態1の集合拡張処理装置の動作)
次に、本実施形態の集合拡張処理装置100の各部が行う動作について図9のフローチャートを用いて説明する。集合拡張処理装置100に電源が入れられ、所定の操作が行われると、CPU 501は図9のフローチャートに示す集合拡張処理を開始する。
【0062】
まず、受付部101は、シード文字列を受け付ける(ステップS101)。例えば、受付部101は、図4に示すように、WEBページの検索エンジンの検索欄601にクエリとして入力された“中華鍋”及び“圧力鍋”を、シード文字列として受け付ける。
【0063】
次に、検索部102は、受け付けられたシード文字列を含む文書を検索し、スニペットを得る(ステップS102)。例えば、検索部102は、シード文字列“中華鍋”及び“圧力鍋”をクエリとして検索し、図4に示すように、検索結果の上位300件のスニペット1、2、3〜300を得る。なお、検索部102が得るスニペットの数は、任意であるが、およそ100件以上のスニペットを得ることにより、より適当なインスタンスの候補を選択することができる。
【0064】
次に、セグメント取得部103は、検索部102が得たスニペットを、セグメント区切文字列で区切ることによりセグメントを得る(ステップS103)。例えば、セグメント取得部103は、スニペット1、2、3〜300をセグメント区切文字列“・・・”で区切り、セグメントを得る。例えば、セグメント取得部103は、スニペット1から、図5に示すように、セグメント1−1〜1−3を得る。
【0065】
セグメントが得られると(ステップS103)、セグメント要素取得部104は、当該セグメントを所定のセグメント要素区切文字列で区切ることによりセグメント要素を得る(ステップS104)。例えば、セグメント1−1〜1−3を、セグメント要素区切文字列(“、”、“,”、“。”、“!”、“[”、“]”等)で区切り、図6のセグメント要素(セグメント要素群1−1P、1−2P、1−3P)を得る。
【0066】
セグメント要素が得られると(ステップS104)、セグメントスコア計算部105は、当該セグメントのそれぞれのセグメントスコアをセグメントが含むセグメント要素の長さの標準偏差に基づいて計算する(ステップS105)。例えば、セグメントスコア計算部105は、セグメント要素の長さの標準偏差が5.00未満の場合は、標準偏差の値そのものをセグメントスコアとし、セグメント要素の長さの標準偏差が5.00以上の場合は、セグメントスコアを5.00とする。すなわち、セグメントスコア計算部105は、標準偏差が“5.89”のセグメント1−1のセグメントスコアを“5.00”、標準偏差が“1.34”のセグメント1−2のセグメントスコアを“1.34”、標準偏差が“5.27”のセグメント1−3のセグメントスコアを“5.00”と求める。
【0067】
次に、セグメント要素スコア計算部106は、セグメント要素のセグメント要素スコアを、セグメントにおいて受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算する(ステップS106)。例えば、セグメント要素スコア計算部106は、セグメントスコアが“5.00”の場合は、セグメント要素スコアを“0”とし、セグメントスコアが“5.00”未満の場合は、セグメントにおいてシード文字列が出現する位置とセグメント要素が出現する位置との距離を用いた式(数1)に基づいて、セグメント要素スコア707a(図7)を計算する。
【0068】
そして、選択部107は、得られたセグメント要素についてのセグメント要素スコアに基づいて、シード文字列と意味的に同一のカテゴリに属するインスタンスの候補を選択する(ステップS107)。例えば、選択部107は、図8に示すように、セグメント要素スコアの値が“0.10”以上のセグメント要素をインスタンスの候補として選択する。
【0069】
本実施形態によれば、“親子鍋”や“タジン鍋”は、シード文字列の“中華鍋”や“圧力鍋”と同じ“鍋”のカテゴリに含まれる用語であるので、意味的に同一のカテゴリに属する語の候補を選択することができる。
【0070】
(4.実施形態2の集合拡張処理装置の概要構成)
実施形態2の集合拡張処理装置100は、拡張集合に含まれるインスタンスの候補について、文脈に基づいてフィルタをかけることにより、意味的に無関係な語を排除するものである。
【0071】
本実施形態に係る集合拡張処理装置100は、図10に示すように、受付部101と、検索部102と、セグメント取得部103と、セグメント要素取得部104と、セグメントスコア計算部105と、セグメント要素スコア計算部106と、選択部107と、抽出部108と、から構成される。本実施形態の受付部101、検索部102、セグメント取得部103、セグメント要素取得部104、セグメントスコア計算部105、セグメント要素スコア計算部106、及び、選択部107は、実施形態1と同様の機能を有する。以下、異なる機能を有する抽出部108について説明する。
【0072】
まず、インスタンスの候補は、シード文字列の前後の文脈とインスタンスの候補の前後の文脈とが類似するほど、シード文字列と意味的に類似していると考えられる。そこで、実施形態2の集合拡張処理装置100は、シード文字列の前後の文脈とインスタンスの候補の前後の文脈とに基づいてシード文字列とインスタンスの候補との類似度を求め、当該類似度に基づき、インスタンスの候補の中からインスタンスを抽出する。これにより、意味的に無関係な語を排除することができる。以下、集合拡張装置100は、g−Monakaアルゴリズムに基づいて計算した類似度から、インスタンスの候補をランク付けし、所定の値以上の類似度を有するものをインスタンスとして抽出する。なお、類似度を求める手法はg−Monakaアルゴリズムに限らない。例えば、g−Espressoアルゴリズムを用いてもよい。
【0073】
抽出部108は、インスタンスの候補を用いて検索することにより得られたスニペットから、抽出されたインスタンスの候補を含むnグラムの接続グラフを生成する。そして、抽出部108は、当該接続グラフにおける、受け付けられたシード文字列の前後の文脈とインスタンスの候補の前後の文脈とに基づいて当該シード文字列と当該インスタンスとの類似度を計算し、当該類似度に基づいて、当該インスタンスの候補から、当該シード文字列を含む集合を拡張した拡張集合に含めるべきインスタンスを抽出する。以下、g−Monakaアルゴリズムに基づく類似度の計算手法を詳細に説明する。
【0074】
抽出部108は、選択部107が選択したインスタンスの候補のそれぞれを、WEBページの検索エンジンに対してクエリとして入力し、検索結果の上位300件のスニペットのリストを得る。そして、抽出部108は、得られたスニペットに対して、UnicodeのNFKCにより正規化して、小文字に統一し、重複を取り除く。また、日本語の割合が極端に少ない、記号が多いなど、スニペットとして適当でないものを除外する。
【0075】
次に、抽出部108は、残ったスニペットの集合に含まれるすべての文字nグラムについて、接続行列M(u,v)を構築する。接続行列M(u,v)は、式(数2)で表される。
【0076】
【数2】

【0077】
ここで、|u,v|は、nグラムuの後にnグラムvが続く頻度であり、|u,*|、|*,v|はそれぞれ、nグラムu、nグラムvそのものの出現頻度である。本実施形態では、|u,v|、|u,*|、|*,v|は、それら自体をクエリとして検索した場合の検索結果数であり、pmi(u,v)は、それらの検索結果数の自然対数をとったものを用いている。
【0078】
次に、抽出部108は、全てのnグラムの集合Vを節点集合とし、Mを接続行列として表現される有向重み付きグラフ(以下、「接続グラフ」という)Gを生成する。生成した接続グラフGの例を図11に示す。このグラフにおいて、nグラムu及びnグラムvのそれぞれの右側文脈及び左側文脈が類似しているほど、それらの意味は類似しているとみなすことができる。
【0079】
ここで、まず、nグラムuの右側文脈とnグラムvの右側文脈とが類似しているか否かは、引用解析手法の書誌結合の概念に対応付けて考えることができる。書誌結合とは、文献x、yが同じ文献を引用することをいう。すなわち、書誌結合は、nグラムuとnグラムvが同じnグラムに接続しているか否かということに対応付けて考えることができる。一方、nグラムuの左側文脈とnグラムvの左側文脈とが類似しているか否かは、引用解析手法の共引用の概念に対応付けて考えることができる。共引用とは、文献x、yが同じ文献により引用されることをいう。すなわち、nグラムuとnグラムvが同じnグラムから接続されているか否かということに対応付けて考えることができる。
【0080】
したがって、nグラムu及びnグラムvの右側文脈及び左側文脈が類似しているか否かを示す類似度行列A、Aを、書誌結合行列及び共引用行列にそれぞれ対応させて求めることとする。右側文脈の類似度行列A、及び、左側文脈の類似度行列Aは、接続行列Mを用いて、式(数3)で表すことができる。
【0081】
【数3】

【0082】
抽出部108は、全てのnグラムについて右側文脈の類似度行列A、及び、左側文脈の類似度行列Aを求める。
【0083】
また、nグラムuとnグラムvとが意味的に類似しているとみなすためには、右側文脈及び左側文脈の両者が類似している必要がある(以下、「両側近接制約」という)。そこで、抽出部108は、式(数4)に示すように、要素毎の重み付き一般化平均によって、nグラムuとnグラムvとの類似度を示す類似度行列Aを求める。ここで、mは、この両側近接制約の強さを調節するパラメータであり、本実施形態では、m=0.1とする。
【0084】
【数4】

【0085】
そして、抽出部108は、この類似度行列Aを用いてラプラシアンカーネルRβ(A)を、数5、数6の式から求める。
【0086】
【数5】

【0087】
【数6】

【0088】
β(A)の(i,j)要素が、nグラムiとnグラムjとの類似度に対応する。そこで、抽出部108は、シードベクトルv(シード文字列に対応する要素が1、それ以外が0となっているようなベクトル)を用いて、Rβ(A)v計算し、計算された値を類似度とする。βの値は、任意であり、例えば、1.0−2である。
【0089】
例えば、図11の接続グラフGにおいて、“中華鍋”は“の”に接続し、“調理はさみ”、“タジン鍋”は両者とも“の”に接続している。また、“中華鍋”に接続する“の”は、“タジン鍋”に接続しているが、“調理はさみ”には接続していない。このような場合において、“調理はさみ”の“中華鍋”に対する類似度Rβ(A)vは、“タジン鍋”の“中華鍋”に対する類似度Rβ(A)vよりも小さい値となる。
【0090】
抽出部108は、例えば、計算した類似度が所定の値を超えたものを、インスタンスとして抽出する。例えば、図12に示すように類似度が求められ、所定の値を“0.10”とすると、抽出部108は、“圧力鍋”、“中華鍋”、“親子鍋”、“タジン鍋”、“伊賀焼”を、インスタンスとして抽出する。
【0091】
本実施形態では、CPU 501が抽出部108として機能する。
【0092】
(5.実施形態2の集合拡張処理装置の動作)
次に、本実施形態の集合拡張処理装置100の各部が行う動作について図13のフローチャートを用いて説明する。集合拡張処理装置100に電源が入れられ、所定の操作が行われると、CPU 501は図13のフローチャートに示す集合拡張処理を開始する。なお、図13のフローチャートにおいて、図9のフローチャートと同じステップ番号が付されているステップは、図9のフローチャートにおける処理と同様の処理を行う。したがって、これらの説明は省略する。
【0093】
選択部107によりインスタンスの候補が選択されると(ステップS107)、抽出部108は、インスタンスの候補を用いて検索エンジンで検索することによりスニペットを取得する(ステップS208)。例えば、抽出部108は、インスタンスの候補をクエリとしてWEBページの検索エンジンに入力し、検索結果の上位300件のスニペットのリストを得る。
【0094】
次に、抽出部108は得られたスニペットからインスタンスの候補を含むnグラムの接続グラフを生成する(ステップS209)。例えば、抽出部108は、300件のスニペットから、不適当なものを除外し、残ったスニペットの集合に含まれるすべての文字のnグラムについて、接続行列Mを求める。そして、図11に示すように、すべてのnグラムの集合Vを節点集合とし、M(数2)を接続行列として表現される接続グラフGを生成する。
【0095】
抽出部108は、接続グラフにおける、シード文字列の前後の文脈と、インスタンスの候補の前後の文脈とに基づいて、シード文字列とインスタンスの候補との類似度を計算する(ステップS210)。例えば、抽出部108は、式(数3)に基づいて、右側文脈の類似度行列A、及び、左側文脈の類似度行列Aを求め、式(数4)に示すように、要素毎に重み付き一般化平均を行った類似度行列Aを求める。さらに、式(数5、6)に基づいて、類似度行列Aを用いたラプラシアンカーネルRβ(A)を求め、シードベクトルvを乗じることにより、シード文字列に対するインスタンスの候補の類似度を求める。
【0096】
抽出部108は、類似度に基づいてインスタンスを抽出する(ステップS211)。例えば、抽出部108は、計算した類似度が“0.10”を超えたものを、図12に示すように、インスタンスとして抽出する。また、あるいは、抽出部108は、類似度の高いものから所定の個数だけ抽出することとしてもよい。例えば、インスタンスの候補が図12に示すように9個有る場合、所定の個数を4個とすると、抽出部108は、類似度において上位4個の“圧力鍋”、“中華鍋”、“親子鍋”、及び、“タジン鍋”をインスタンスとして抽出する。
【0097】
本実施形態によれば、意味的に無関係な語を排除することができ、意味的に同一のカテゴリに含まれるとみなすのにより適当な用語を抽出することができる。
【0098】
なお、実施形態1、2では、集合拡張処理装置100は、ショッピングサイトの商品のカテゴリ生成に適用する例を示したが、これに限らない。例えば、固有表現獲得や辞書構築等に応用可能である。
【産業上の利用可能性】
【0099】
本発明によれば、意味的に同一のカテゴリに属する語の候補を選択するのに好適な集合拡張処理装置、集合拡張処理方法、プログラム、及び、記録媒体を提供することができる。
【符号の説明】
【0100】
100 集合拡張処理装置
101 受付部
102 検索部
103 セグメント取得部
104 セグメント要素取得部
105 セグメントスコア計算部
106 セグメント要素スコア計算部
107 選択部
108 抽出部
200 ショッピングサーバ
300 インターネット
401、402〜40n 端末装置
500 情報処理装置
501 CPU
502 ROM
503 RAM
504 NIC
505 画像処理部
506 音声処理部
507 DVD−ROMドライブ
508 インターフェース
509 外部メモリ
510 コントローラ
511 モニタ
512 スピーカ
601 検索欄
602 検索ボタン


【特許請求の範囲】
【請求項1】
シード文字列を受け付ける受付部、
前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索部、
前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得部、
前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得部、
前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算部、
前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算部、
前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択部、
を備えることを特徴とする集合拡張処理装置。
【請求項2】
請求項1に記載の集合拡張処理装置であって、
前記インスタンスの候補を用いて検索することにより得られたスニペットから、前記抽出されたインスタンスの候補を含むnグラムの接続グラフを生成し、当該接続グラフにおける前記受け付けられたシード文字列の前後の文脈と当該インスタンスの候補の前後の文脈とに基づいて当該シード文字列と当該インスタンスの候補との類似度を計算し、当該類似度に基づいて、当該インスタンスの候補から、当該シード文字列を含む集合を拡張した拡張集合に含めるべきインスタンスを抽出する抽出部
をさらに備えることを特徴とする集合拡張処理装置。
【請求項3】
請求項1又は2に記載の集合拡張処理装置であって、
前記得られたセグメントのそれぞれについて、当該セグメントに出現するセグメント要素のそれぞれの長さの標準偏差が所定の閾値を超える場合、前記セグメントスコアならびに前記セグメント要素スコアは、当該セグメントに含まれるセグメント要素が前記インスタンスの候補として前記選択部により選択されることがないような値となる
ことを特徴とする集合拡張処理装置。
【請求項4】
請求項1乃至3のいずれか1項に記載の集合拡張処理装置であって、
前記得られたセグメントのそれぞれに出現するセグメント要素のそれぞれのセグメント要素スコアは、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との最短距離に対して指数的に減衰する
ことを特徴とする集合拡張処理装置。
【請求項5】
受付部と、検索部と、セグメント取得部と、セグメント要素取得部と、セグメントスコア計算部と、セグメント要素スコア計算部と、選択部と、を備える集合拡張処理装置が実行する集合拡張処理方法であって、
前記受付部が、シード文字列を受け付ける受付工程、
前記検索部が、前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索工程、
前記セグメント取得部が、前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得工程、
前記セグメント要素取得部が、前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得工程、
前記セグメントスコア計算部が、前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算工程、
前記セグメント要素スコア計算部が、前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算工程、
前記選択部が、前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択工程、
を備えることを特徴とする集合拡張処理方法。
【請求項6】
コンピュータを、
シード文字列を受け付ける受付部、
前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索部、
前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得部、
前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得部、
前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算部、
前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算部、
前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択部、
として機能させることを特徴とするプログラム。
【請求項7】
コンピュータを、
シード文字列を受け付ける受付部、
前記受け付けられたシード文字列を含む文書を検索して、当該検索された文書のスニペットを得る検索部、
前記得られたスニペットを所定のセグメント区切文字列で区切ることにより、前記受け付けられたシード文字列の前後に出現する文字列と、当該シード文字列とを出現順に並べた文字列からなるセグメントを得るセグメント取得部、
前記得られたセグメントのそれぞれを、所定のセグメント要素区切文字列で区切ることにより、セグメント要素を得るセグメント要素取得部、
前記得られたセグメントのそれぞれのセグメントスコアを、当該セグメントに出現するセグメント要素のそれぞれの長さの分散もしくは標準偏差に基づいて計算するセグメントスコア計算部、
前記得られたセグメントのそれぞれに含まれるセグメント要素のそれぞれのセグメント要素スコアを、当該セグメントにおいて前記受け付けられたシード文字列が出現する位置と当該セグメントにおいて当該セグメント要素が出現する位置との距離、ならびに、当該セグメントについて計算されたセグメントスコアに基づいて計算するセグメント要素スコア計算部、
前記得られたセグメント要素のそれぞれについて計算されたセグメント要素スコアに基づいて、当該セグメント要素からいずれかを、前記受け付けられたシード文字列を含む集合を拡張した拡張集合に含まれるインスタンスの候補として選択する選択部、
として機能させることを特徴とするプログラムを記録したコンピュータ読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2012−185666(P2012−185666A)
【公開日】平成24年9月27日(2012.9.27)
【国際特許分類】
【出願番号】特願2011−48124(P2011−48124)
【出願日】平成23年3月4日(2011.3.4)
【出願人】(399037405)楽天株式会社 (416)
【Fターム(参考)】