(58)【調査した分野】(Int.Cl.,DB名)
グループに分類された複数の文書と、前記複数の文書から、文書内において所定の特徴を有するキーワードを抽出する抽出器によって抽出された前記キーワードとを取得する取得部と、
前記グループ内の文書間の前記キーワードの一致度合に基づいて、前記抽出器の性能を評価する評価部と、を備え、
前記評価部は、
前記複数の文書の中の着目文書から抽出された前記キーワードと、前記複数の文書に含まれ、前記着目文書以外の他文書から抽出された前記キーワードとの一致度合に基づいて、前記着目文書に対する前記抽出器の性能を評価することを、前記着目文書を変更しながら繰り返し、
前記繰り返し行った評価の結果を総合して、前記抽出器の性能を評価する、
情報処理装置。
前記評価部は、前記複数の文書の中の着目文書と同じグループに分類された複数の前記他文書のうち、前記着目文書と同じキーワードが抽出された前記他文書の数と、前記複数の文書の中から前記着目文書を除いた複数の前記他文書のうち、前記着目文書と同じキーワードが抽出された前記他文書の数とに基づいて、前記着目文書に対する前記抽出器の性能を評価する、
請求項1または2に記載の情報処理装置。
前記評価部は、前記複数の文書の中の着目文書と同じグループに分類された複数の前記他文書のうち、前記着目文書と同じキーワードが抽出された前記他文書の数と、前記着目文書と同じグループに分類された前記他文書の数とに基づいて、前記着目文書に対する前記抽出器の性能を評価する、
請求項1から3のうちいずれか1項に記載の情報処理装置。
前記抽出器は、前記複数の文書に含まれる着目文書に類似する複数の類似文書のうち、前記着目文書に出現するキーワードの候補が出現する前記類似文書の数に基づいて、前記着目文書に含まれる前記キーワードの候補を前記キーワードとして抽出する、
請求項1から5のうちいずれか1項に記載の情報処理装置。
【発明を実施するための形態】
【0009】
以下、本発明を適用した情報処理装置
、情報処理方法、およびプログラムを、図面を参照して説明する。
【0010】
[概要]
情報処理装置は、一以上のプロセッサにより実現される。情報処理装置は、関連する文書同士が人手によって同じグループに分類された複数の文書と、複数の文書から、文書内において所定の特徴を有するキーワードを抽出するキーワード抽出器によって抽出されたキーワードとを取得する。情報処理装置は、複数の文書とキーワードとを取得すると、グループ内の文書間のキーワードの一致度合に基づいて、キーワード抽出器の性能を評価する。キーワード抽出器の性能が高いほど、キーワード抽出器により抽出されたキーワードが、文書本来の意味や概念を表したものとなる。このようなキーワードを利用して文書検索を行った場合、キーワード抽出器がキーワードの抽出対象とした文書に関連した文書を検索することができる。この結果、ユーザの情報収集の効率を向上させることができる。
【0011】
<第1実施形態>
[全体構成]
図1は、第1実施形態における情報処理装置100を含む情報処理システム1の一例を示す図である。第1実施形態における情報処理システム1は、例えば、一以上の端末装置10と、サービス提供装置20と、情報処理装置100とを備える。これらの装置は、ネットワークNWを介して接続される。
【0012】
図1に示す各装置は、ネットワークNWを介して種々の情報を送受信する。ネットワークNWは、例えば、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)、プロバイダ端末、無線通信網、無線基地局、専用回線などを含む。なお、
図1に示す各装置の全ての組み合わせが相互に通信可能である必要はなく、ネットワークNWは、一部にローカルなネットワークを含んでもよい。
【0013】
端末装置10は、例えば、スマートフォンなどの携帯電話、タブレット端末、各種パーソナルコンピュータなどの、入力装置、表示装置、通信装置、記憶装置、および演算装置を備える端末装置である。通信装置は、NIC(Network Interface Card)などのネットワークカード、無線通信モジュールなどを含む。端末装置10では、ウェブブラウザやアプリケーションプログラムなどのUA(User Agent)が起動し、ユーザの入力する内容に応じたリクエストをサービス提供装置20に送信する。また、UAが起動された端末装置10は、サービス提供装置20から取得した情報に基づいて、表示装置に各種画像を表示させる。
【0014】
サービス提供装置20は、例えば、ウェブブラウザからのリクエストに応じてウェブページを端末装置10に提供するウェブサーバである。ウェブページは、例えば、検索サービスを提供するウェブページ(以下、検索ページと称する)である。検索ページには、例えば、ニュース記事などの文書(テキストデータ)や、動画像データ、静止画像データ、音声データなどのコンテンツが含まれる。また、サービス提供装置20は、インターネットショッピングやSNS(Social Networking Service)、メールサービスなどの各種サービスを提供するウェブページを端末装置10に提供してもよい。また、サービス提供装置20は、アプリケーションプログラムからのリクエストに応じてコンテンツを端末装置10に提供するアプリケーションサーバであってもよい。
【0015】
例えば、ユーザが端末装置10に表示された検索ページに対してクエリを入力した場合、サービス提供装置20は、クエリに対応した単語(ワード)や語句(フレーズ)が文書中に含まれるウェブページを、クエリによる検索結果として端末装置10に提供する。これを受けて、ユーザが検索結果の中から所望のウェブページを選択した場合、サービス提供装置20は、ユーザにより選択されたウェブページから抽出されたキーワードを、当該ウェブページに含めて端末装置10に提供する。サービス提供装置20は、後述するキーワード抽出器EXを利用して、提供対象のウェブページから予めキーワードを抽出して置いてもよいし、検索時に併せて提供対象のウェブページからキーワードを抽出してもよい。
【0016】
図2は、サービス提供装置20により提供されるウェブページの一例を示す図である。図示の例のように、オリンピックに関連したニュース記事が掲載されたウェブページが提供される場合、そのウェブページには、ニュース記事から抽出された、「○○五輪」や「○○オリンピック」、「□□□□選手」のようなキーワードKWが含まれる。キーワードKWには、そのキーワードKWをクエリとした検索結果にアクセスするためのURL(Uniform Resource Locator)がリンク付けられる。そのため、キーワードKWは、文書の内容を端的に表現していることが好ましく、更に、キーワードをクエリとした場合、容易に他の文書を検索することができることが好ましい。このように、キーワードKWの検索結果へのリンク先が含まれるウェブページをユーザに提供することで、ユーザは、自身が検索した情報に関連した情報も併せて取得することができる。以下、キーワードKWをクエリとして検索することで得られるウェブページのことを、「関連ページ」と称する。
【0017】
図3は、関連ページの一例を示す図である。図示の例では、
図2に例示した「○○五輪」というキーワードKWをクエリとして検索したときの検索結果を表している。このような検索結果には、「○○五輪」に関連した各関連ページのタイトルやURL、要約(スニペット)、画像などが項目(リスト)として掲載される。図示の例では、最上段の関連ページには文書Aが含まれ、2番目の関連ページには文書Bが含まれ、3番目の関連ページには文書Cが含まれていることを表している。これらの各関連ページには、キーワードの候補となる単語や語句の集合である文書が含まれる。関連ページに含まれる文書(以下、関連文書)と、キーワードの抽出元の文書とは、互いに同一のキーワードを共有しているという性質(キーワード或いはキーフレーズの共有性)を有している。キーフレーズの共有性が高いほど、すなわち、同一のキーワードの共有数が多いほど、より多くの関連ページをユーザに提供することができる。
【0018】
情報処理装置100は、サービス提供装置20が利用するキーワード抽出器EXを、そのキーワード抽出器EXによって各文書から抽出されたキーワード同士を比較することで評価する。
【0019】
[情報処理装置の構成]
図4は、第1実施形態における情報処理装置100の構成の一例を示す図である。図示のように、情報処理装置100は、例えば、通信部102と、制御部110と、記憶部130とを備える。
【0020】
通信部102は、例えば、NIC等の通信インターフェースを含む。通信部102は、ネットワークNWを介して、端末装置10やサービス提供装置20などと通信する。
【0021】
制御部110は、例えば、キーワード付与部112と、文書分類部114と、抽出器評価部116とを備える。これらの構成要素は、例えば、CPU(Central Processing Unit)などのプロセッサが記憶部130に格納されたプログラムを実行することにより実現される。また、制御部110の構成要素の一部または全部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、またはGPU(Graphics Processing Unit)などのハードウェア(回路部;circuitry)により実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
【0022】
記憶部130は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置により実現される。記憶部130には、ファームウェアやアプリケーションプログラムなどの各種プログラムの他に、キーワード抽出器データ132や文書データ134が格納される。
【0023】
キーワード抽出器データ132は、キーワード抽出器EXがどういった抽出器であるのかを定義した情報(プログラム)であり、例えば、複数のキーワード抽出器EXの其々を定義した情報であってよい。例えば、キーワード抽出器EXは、複数の単語や語句を含む文書を形態素解析によって、キーワードの候補となる複数の形態素に分割し、TF(Term Frequency)‐IDF(Inverse Document Frequency)などの単語の出現頻度を評価する手法を用いて、分割した各形態素、または複数の形態素を組み合わせに対して重みを付け、その重みが大きいものをキーワードとして抽出する。TF‐IDFに基づく重みは、「所定の特徴」の一例である。
【0024】
例えば、キーワード抽出器EXは、キーワードの候補とする形態素の数を1つに限らず、所定数(例えば3つ)とすることで、所定の長さのキーワードを抽出してよい。また、例えば、キーワード抽出器EXは、キーワードの候補となる形態素を、名詞や形容詞、動詞などの特定の品詞に限定してもよい。また、例えば、キーワード抽出器EXは、キーワードの候補となる形態素を、半角文字或いは全角文字に限定したり、アルファベットであれば小文字に限定したりしてもよい。また、例えば、キーワード抽出器EXは、キーワードの候補とする品詞の活用形を所定の活用形に変換してもよい。具体的には、キーワード抽出器EXは、形態素として助動詞をキーワードの候補とする場合、助動詞の活用を「です、ます」調から、「である」調に変換してよい。このように、キーワードの長さを指定したり、品詞の種類を限定したり、全角半角や大文字小文字を指定したり、品詞の活用を指定したりすることは、キーワード抽出器EXの設計者(例えばシステムエンジニアなど)が事前に決定するハイパーパラメータとして扱われる。
【0025】
文書データ134は、複数の文書(例えば1万件の文書)を含むデータであり、例えば、サービス提供装置20により提供される各ウェブページに含まれる文書を含んでもよいし、これとは別に用意された文書を含んでもよい。文書データ134には、様々なジャンルやテーマの文書が網羅的に含まれていてもよいし、特定のジャンルやテーマの文書だけが含まれていてもよい。なお、各ジャンルやテーマに該当する文書の数は均等である必要はなく、特定のジャンル或いはテーマの文書が多く、他のジャンル或いはテーマの文書が少ない、といったように偏りが生じていてもよい。
【0026】
[処理フロー]
以下、第1実施形態における情報処理装置100による一連の処理の流れをフローチャートに即して説明する。
図5は、第1実施形態における情報処理装置100による一連の処理の流れを示すフローチャートである。本フローチャートの処理は、例えば、所定の周期で繰り返し行われてもよい。
【0027】
まず、キーワード付与部112は、キーワード抽出器データ132を基に、一つまたは複数のキーワード抽出器EXを構築(生成)し、構築したキーワード抽出器EXに、文書データ134に含まれる各文書から一以上のキーワードを抽出させ、抽出させたキーワードを抽出元の文書に付与する(S100)。キーワード付与部112は、「取得部」の一例である。また、キーワード付与部112によって構築されたキーワード抽出器EX、すなわち、プロセッサがキーワード抽出器データ132を参照することで実現されるキーワード抽出器EXは、「キーワード抽出装置」の一例である。
【0028】
次に、文書分類部114は、通信部102を制御して、キーワード付与部112によりキーワードが付与された複数の文書を所定の端末装置10に送信し、所定の端末装置10のユーザに文書のグループ分けを依頼する(S102)。所定の端末装置10は、例えば、クラウドソーシングの参加者のコンピュータなどであってよい。文書のグループ分けを依頼されたユーザは、例えば、複数の文書を見て、内容が関連する文書同士を同じグループに分類し、その分類結果を、端末装置10を用いて情報処理装置100に送信する。
【0029】
図6は、文書の分類結果の一例を示す図である。図中の文書IDは、グループ分けが依頼された複数の文書の其々の識別情報を表す。図示の例では、文書IDが「DOC_A」の文書(以下、文書A)と、文書IDが「DOC_B」の文書(以下、文書B)と、文書IDが「DOC_C」の文書(以下、文書C)が、野球に関連したグループXに分類されており、文書IDが「DOC_D」の文書(以下、文書D)と、文書IDが「DOC_E」の文書(以下、文書E)が、サッカーに関連したグループYに分類されている。なお、各文書からは、2つずつキーワードが抽出されており、このキーワードの抽出数は、ハイパーパラメータとして予め決められているものとする。
【0030】
次に、抽出器評価部116は、通信部102が、所定の端末装置10から複数の文書の分類結果を取得するまで待機し(S104)、通信部102が複数の文書の分類結果を取得すると、グループに分類された複数の文書(母集団)の中から、着目する一つの文書(以下、着目文書と称する)を選択する(S106)。
【0031】
次に、抽出器評価部116は、選択した着目文書から抽出された一以上のキーワードと、着目文書と同じグループに分類された他文書から抽出された一以上のキーワードと比較して、これらのキーワードが互いに一致する度合に基づいて、F値(F-measure)を導出する。F値は、適合率(precision)と、再現率(recall)との調和平均によって導出されてよい。例えば、抽出器評価部116は、数式(1)に基づいてF値を導出し、数式(2)に基づいて適合率を導出し、数式(3)に基づいて再現率を導出する。
【0035】
上記式のRは、着目文書と同じグループに分類された一以上の他文書のうち、着目文書と同じキーワードが抽出された他文書の数を表し、Nは、グループ分けを依頼した複数の文書の中から着目文書を除いた残りの他文書のうち、着目文書と同じキーワードが抽出された他文書の数を表し、Cは、着目文書と同じグループに分類された他文書の数を表している。
【0036】
図6に例示した分類結果である場合に、文書Aを着目文書とした場合、抽出器評価部116は、例えば、文書Aと同じグループに分類された他文書(B、C)のうち、「野球」というキーワードが抽出された文書の数Rと、グループを問わず文書Aを除く他文書(B〜E)のうち、「野球」というキーワードが抽出された文書の数Nとの商を、文書Aから抽出された「野球」というキーワードの適合率として導出する。
図6の例の場合、グループYの文書Dから「野球」というキーワードが抽出されているため、Nは1となり、グループXの各文書からは「野球」というキーワードが抽出されていないため、Rは0となる。従って、適合率は、0/1、すなわち0[%]となる。
【0037】
また、抽出器評価部116は、文書Aと同じグループに含まれる他文書(B、C)のうち、「野球」というキーワードが抽出された文書の数Rと、文書Aと同じグループに分類された他文書の数Cとの商を、文書Aから抽出された「野球」というキーワードの再現率として導出する。
図6の例の場合、グループXには、文書Aの他に2つの文書が分類されているため、Cは2となり、それらの2つの文書からは「野球」というキーワードが抽出されていないため、Rは0となる。従って、再現率は、0/2、すなわち0[%]となる。
【0038】
同様に、文書Aから抽出された「ベースボール」というキーワードの適合率は、Rが2であり、Nが2であるため、100[%]となる。また、文書Aから抽出された「ベースボール」というキーワードの再現率は、Rが2であり、Cが2であるため、100[%]となる。
【0039】
抽出器評価部116は、着目文書として選択した文書Aから抽出された各キーワードについて、F値を導出する。着目文書から抽出された各キーワードのF値は、キーワード毎のキーワード抽出器EXの性能を評価した評価値を表している。上述した数値例の場合、「野球」というキーワードのF値は、適合率が0[%]、再現率が0[%]であるため、(2×0[%]×0[%])/(0[%]+0[%])=0[%]となる。また、「ベースボール」というキーワードのF値は、適合率が100[%]、再現率が100[%]であるため、(2×100[%]×100[%])/(100[%]+100[%])=100[%]となる。
【0040】
そして、抽出器評価部116は、各キーワードのF値を平均することで、着目文書のF値を導出する。着目文書のF値は、着目文書に対するキーワード抽出器EXの性能を評価した評価値を表している。上記の数値例の場合、文書AのF値は、50[%]となる。
【0041】
次に、抽出器評価部116は、母集団に含まれる全ての文書を着目文書として選択したか否かを判定し(S110)、未だ、全ての文書を着目文書として選択していない場合、着目文書を変更して、S106およびS108の処理を繰り返す。
【0042】
例えば、抽出器評価部116は、着目文書を文書Aから文書Eに変更した場合、文書Eから抽出された「サッカー」というキーワードの適合率については、Rが1であり、Nが2であるため、50[%]として導出し、文書Eから抽出された「サッカー」というキーワードの再現率については、Rが1であり、Cが1であるため、100[%]として導出する。抽出器評価部116は、文書Eの「サッカー」というキーワードのF値を、(2×50[%]×100[%])/(50[%]+100[%])≒66.7[%]として導出する。
【0043】
また、抽出器評価部116は、文書Eから抽出された「野球」というキーワードの適合率については、Rが0であり、Nが1であるため、0[%]として導出し、文書Eから抽出された「野球」というキーワードの再現率については、Rが0であり、Cが1であるため、0[%]として導出する。抽出器評価部116は、文書Eの「野球」というキーワードのF値を、(2×0[%]×0[%])/(0[%]+0[%])=0[%]として導出する。そして、抽出器評価部116は、文書Eの各キーワードのF値の平均である33.3[%]を、文書EのF値として導出する。
【0044】
このように、抽出器評価部116は、着目文書を変更しながら、母集団に含まれる全ての文書のF値を求めることを繰り返す。
【0045】
次に、抽出器評価部116は、母集団に含まれる全ての文書のF値に基づいて、キーワード抽出器EXを評価する(S112)。例えば、抽出器評価部116は、文書のF値をグループ毎に平均し、グループ毎に求めたF値の平均値を更に平均した値を、母集団に対するキーワード抽出器EXの性能を評価した評価値として導出する。
【0046】
図7は、キーワード抽出器EXの評価結果の一例を示す図である。図示の例では、複数のキーワード抽出器EXの其々についての評価結果を表している。図示の例のように、グループXに分類された文書A、B、Cの其々のF値は、50[%]である場合、抽出器評価部116は、3つの文書のF値の平均値である50[%]を、グループXに対するキーワード抽出器EXの性能を評価した評価値として導出する。また、グループYに分類された文書D、Eの其々のF値は、33[%]である場合、抽出器評価部116は、2つの文書のF値の平均値である33[%]を、グループYに対するキーワード抽出器EXの性能を評価した評価値として導出する。
【0047】
そして、抽出器評価部116は、グループXのF値とグループYのF値との平均((50+33)/2)である42[%]を、母集団に対するキーワード抽出器EXの性能を評価した評価値として導出する。
【0048】
次に、抽出器評価部116は、通信部102を制御して、キーワード抽出器EXの評価結果(例えば母集団に対するF値)を、サービス提供装置20に送信する(S114)。これに受けて、サービス提供装置20は、例えば、複数のキーワード抽出器EXが存在する場合、F値が最も大きいキーワード抽出器EXを利用して、ウェブページなどからキーワードを抽出する。この結果、関連ページの検索に利用可能な汎用的なキーワード、すなわち文書間での共有性が高いキーワードが抽出されやすくなるため、より多くの関連ページをユーザに提供することができる。
【0049】
以上説明した第1実施形態によれば、関連する文書同士が人手によって同じグループに分類された複数の文書と、キーワード抽出器EXによって文書から抽出されたキーワードとを取得し、グループ内の文書間のキーワードの一致度合に基づいて、キーワード抽出器EXの性能を評価するため、性能が良いキーワード抽出器EXを利用することができ、文書間での共有性が高いキーワードを抽出することができる。これによって、ユーザが文書を検索したときに、その文書に関連した関連文書を容易に検索することができ、ユーザが検索した文書により関連し、且つより多くの関連文書を提供することができる。この結果、ユーザの情報収集の効率を向上させることができる。
【0050】
一般的に、キーワード抽出器EXは、予め、人間がこういった文書であればこういったキーワードが抽出される、という正解データを用意しておき、その正解データと、キーワード抽出器EXが抽出したキーワードとに基づいて、教師あり学習がなされる。このような場合、仮に、
図6に例示した文書を想定した場合、人間が、グループXに分類された文書の正解データ(正解キーワード)を「野球」とした場合、キーワード抽出器EXによって「ベースボール」というキーワードが抽出された場合、そのキーワードは不正解となる。同様に、人の名前のフルネーム(氏名)を正解データとした場合、「名字」だけをキーワードとして抽出したり、「名前」だけをキーワードとして抽出したりした場合、それらは不正解となる。
【0051】
これに対して、上述した実施形態では、人間が正解データとして定めたキーワードと、キーワード抽出器EXが抽出したキーワードとを比較するのではなく、人間が定めたグループ内でキーワード抽出器EXが抽出したキーワード同士を比較するため、人間が定めた正解データの意味的な揺れに左右されずに、同じグループに分類された文書間でキーワードが同じであるのか異なっているのかという観点でキーワード抽出器EXを評価することができる。
【0052】
また、例えば、複数の単語を組み合わせた比較的長いキーワードをキーワード抽出器EXが抽出するようにハイパーパラメータが決定されている場合、学習データもまた、キーワード抽出器EXが抽出するキーワードの長さに合わせる必要がある。この場合、ハイパーパラメータを変更して、キーワード抽出器EXに抽出させるキーワードの長さを調整した場合、学習データをその都度変える必要があり、学習データの作成コストが大きくなりやすい。
【0053】
これに対して、上述した実施形態では、人間が定めたグループ内でキーワード抽出器EXが抽出したキーワード同士を比較するため、ハイパーパラメータを変更してキーワード抽出器EXに抽出させるキーワードの長さを変更したとしても、比較対象とするキーワード同士が共通して同じ長さとなり、更にグループ分け自体は変更されないため、学習データの作成コストを削減することができる。
【0054】
また、人間によって決められた正解データに対して、抽出するキーワードが近づくようにキーワード抽出器EXを学習する場合、正解データとして指定する全てのキーワードに対して、半角文字や小文字に統一したり、文末の助動詞の活用を「です、ます」調から、「である」調に変換したりするような前処理を行う必要がある。
【0055】
これに対して、上述した実施形態では、キーワード抽出器EXによって抽出されるキーワードの長さや各品詞の活用形を予めハイパーパラメータとして定義しておくだけで、上記のような前処理を省略することができる。
【0056】
このように、上述した実施形態によれば、複数の文書を事前にグループ分けするだけで、文書ごとに正解データを作成する必要がなくなり、学習に要するコスト(作業負担など)を削減することができる。また、上述した実施形態によれば、抽出すべきキーワードが、漢字がよいのか、英字などの外来語(横文字)がよいのか、フルネームがよいのか、といった種々のコンセプトについて考慮する必要がなくなる。また、上述した実施形態によれば、同じグループの他文書から抽出されるキーワードを正解データとするため、その文書に特有(固有)のキーワード(例えば、文書作成者が作った造語など)が含まれている場合、同じグループの他文書からも特有のキーワードが抽出されなければF値が小さくなるため、文書特有のキーワードを抽出しやすいキーワード抽出器EXほど利用され難くなり、文書間での共有性が高いキーワードを抽出しやすいキーワード抽出器EXほど利用され易くなる。
【0057】
また、上述した実施形態によれば、グループ毎に文書のF値の平均を求めるため、母集団のグループ間でのサンプル数(文書数)の偏りの影響を抑制することができる。例えば、特定のジャンル或いはテーマの文書が多く、他のジャンル或いはテーマの文書が少ない、といったような偏りが生じている場合、グループ単位ではなく、全ての文書でF値を平均した場合、サンプル数が多いグループのF値が全体の評価値に大きく反映され、サンプル数が多いグループに対してキーワードの抽出精度が高くなるようにキーワード抽出器が学習される傾向にある。これに対して、上述した実施形態では、先にグループ毎にF値の平均をとることで、グループ間のサンプル数の差をなくしてから、キーワード抽出器EXを学習することができる。この結果、どのグループからも、文書間での共有性が高いキーワードを精度良く抽出することができる。
【0058】
<第2実施形態>
以下、第2実施形態について説明する。第2実施形態では、キーワードの抽出対象となる文書に類似する複数の類似文書のうち、キーワードの抽出対象となる文書に出現するキーワードの候補が出現する類似文書の数に基づいて、キーワードの抽出対象となる文書からキーワードを抽出する点で上述した第1実施形態と相違する。以下、第1実施形態との相違点を中心に説明し、第1実施形態と共通する点については説明を省略する。なお、第2実施形態の説明において、第1実施形態と同じ部分については同一符号を付して説明する。
【0059】
図8は、第2実施形態における情報処理装置100Aの構成の一例を示す図である。図示のように、情報処理装置100Aは、例えば、通信部102と、制御部110Aと、記憶部130Aとを備える。
【0060】
第2実施形態における制御部110Aは、例えば、上述したキーワード付与部112と、文書分類部114と、抽出器評価部116とに加えて、更に、類似文書選択部118と、学習処理部120とを備える。
【0061】
第2実施形態における記憶部130Aには、ファームウェアやアプリケーションプログラムなどの各種プログラムと、キーワード抽出器データ132と、文書データ134とに加えて、更に、類似文書データ136が格納される。
【0062】
類似文書データ136は、キーワードの抽出対象となる文書(文書データ134に含まれる各文書)に類似し得る複数の文書を含むデータである。文書同士が「類似する」とは、比較対象とする其々の文書をベクトル化したときに、あるベクトル空間において、それらの各文書のベクトルが互いに近い関係であることをいう。
【0063】
[処理フロー]
以下、第2実施形態における情報処理装置100Aによる一連の処理の流れをフローチャートに即して説明する。
図9は、第2実施形態における情報処理装置100Aによる一連の処理の流れを示すフローチャートである。本フローチャートの処理は、例えば、所定の周期で繰り返し行われてもよい。
【0064】
まず、類似文書選択部118は、文書データ134に含まれる複数の文書のうち、キーワード抽出器EXにキーワードを抽出させる対象の文書(以下、キーワード抽出対象文書と称する)と類似する類似文書を、類似文書データ136に含まれる複数の文書の中から選択する(S200)。キーワード抽出対象文書は、「着目文書」の他の例である。
【0065】
例えば、類似文書選択部118は、キーワード抽出対象文書に含まれる各単語の出現頻度などの統計量を各要素とする多次元ベクトルを、キーワード抽出対象文書をベクトル化したキーワード抽出対象文書ベクトルとして生成する。また、類似文書選択部118は、ある着目する単語の前後に出現する単語を予測するタスクを学習するword2vecやdoc2vecといったアルゴリズムを利用したり、他の既存の手法を利用したりすることで、キーワード抽出対象文書ベクトルを生成してもよい。
【0066】
類似文書選択部118は、生成したキーワード抽出対象文書ベクトルと、類似文書データ136に含まれる、類似文書の候補となる各文書のベクトル(以下、類似文書候補ベクトルと称する)との類似度を導出する。類似文書候補ベクトルは、上述したキーワード抽出対象文書ベクトルの生成手法を利用して予め生成されているものとする。
【0067】
例えば、類似文書選択部118は、キーワード抽出対象文書ベクトルと類似文書候補ベクトルとのコサイン類似度を導出し、複数の類似文書候補ベクトルのうち、キーワード抽出対象文書ベクトルとのコサイン類似度が大きい上位所定数(例えば10個)の類似文書候補ベクトルを抽出したり、キーワード抽出対象文書ベクトルとのコサイン類似度が閾値以上の全ての類似文書候補ベクトルを抽出したりする。そして、類似文書選択部118は、抽出した類似文書候補ベクトルの元となった文書を、類似文書として選択する。
【0068】
次に、キーワード付与部112は、キーワード抽出器EXに対して、キーワード抽出対象文書に出現するある単語Xが出現した類似文書の数をカウントさせ、そのカウントさせた数に基づいてTF‐IDFを計算させ、キーワード抽出対象文書に含まれる各キーワードの候補の単語や語句に重みを付与させる(S202)。
【0069】
第2実施形態におけるキーワード抽出器EXは、例えば、数式(4)に基づいて、キーワード抽出対象文書ごとにTF‐IDFを計算する。
【0071】
キーワード抽出器EXは、複数の類似文書のうち、キーワード抽出対象文書に出現する単語Xが出現する類似文書の数を、全類似文書の数で除算した割合を求め、更に、その割合を、類似文書問わず類似文書データ136に含まれる全文書のうち、キーワード抽出対象文書に出現する単語Xが出現する文書数の対数値で除算することで、単語XについてのTF‐IDFを導出する。キーワード抽出器EXは、単語Xを変更しながら、キーワード抽出対象文書に含まれる各キーワード候補についてTF‐IDFを導出する。このような処理によって、キーワードを付与したい文書と、その文書に類似する類似文書との双方では出現し易く、それら以外の他文書では出現し難い単語Xほど、重みを大きくすることができる。
【0072】
一般的なTF-IDFは、キーワードを付与したい文書では出現し易く、類似文書を含む他文書では出現し難い単語Xほど重みを大きくするものである。そのため、キーワード抽出対象文書に関して特有の単語や語句がキーワードとして抽出されやすい。特有の単語や語句とは、例えば、その文書において特有の言い回しの表現や、文書作成者が作った造語などである。このような特有の単語や語句は、他の単語や語句と比べてIDFが大きくなるため、キーワードとして抽出されやすく、仮に、このキーワードを文書検索に利用した場合、キーワードの抽出元の文書に類似した文書を検索することが難しい場合がある。
【0073】
これに対して、本実施形態では、TF−IDFの分子式を、単語が自文書で何回出現したかということから、複数の類似文書のうち、どの程度の類似文書に自文書に含まれる単語が含まれているのかということに置き換えるため、より文書間での共有性が高いキーワードを抽出することができる。
【0074】
次に、キーワード付与部112は、キーワード抽出器EXに、計算させたTF‐IDFを基に、文書データ134に含まれる各文書から一以上のキーワードを抽出させ、そのキーワードを抽出元の文書に付与する(S204)。
【0075】
以降のS206の処理からS216の処理は、上述したS102の処理からS112の処理と同じであるため説明を省略する。
【0076】
次に、学習処理部120は、抽出器評価部116によるキーワード抽出器EXの評価結果に基づいて、キーワード抽出器EXのハイパーパラメータを学習(決定)する(S218)。例えば、学習処理部120は、キーワード抽出器EXのF値が大きくなるように、TF‐IDFを計算する際に参照する類似文書の数(上述した所定数)や、ベクトル同士の類似度を導出手法、抽出するキーワードの長さ、キーワードの品詞、といったハイパーパラメータを決定する。
【0077】
また、学習処理部120は、類似文書が与えられなくても、上述した手法で得られたキーワードが抽出できるように、キーワード抽出器EXを学習してもよい。より具体的には、学習処理部120は、S204の処理で得られたキーワードを正解データとして、キーワード抽出器EXを教師あり学習する。これによって、類似文書を予め用意しておかなくとも、文書間での共有性が高いキーワードを精度良く抽出することができる。
【0078】
なお、上述した説明では、キーワード抽出器EXが、キーワード抽出対象文書に出現する単語Xが類似文書にも出現する回数をカウントするものとして説明したがこれに限られない。例えば、キーワード抽出器EXは、キーワード抽出対象文書により類似する類似文書ほど(類似度が大きい類似文書ほど)、TF-IDFの分子式の寄与度を大きくしてよい。例えば、類似文書として、文書X、Y、Zが存在する場合、数式(5)に基づいて、TF-IDFを求めてよい。
【0080】
式中、W
Xは、文書Xの類似度を表し、W
Yは、文書Yの類似度を表し、W
Zは、文書Zの類似度を表している。キーワード抽出器EXは、キーワード抽出対象文書に出現する単語Xが出現する類似文書の各類似度の平均をTF-IDFの分子とすることで、より文書間での共有性が高いキーワードを抽出することができる。
【0081】
また、類似文書が、キーワード抽出対象文書との類似度に応じてランクが付けられている場合、キーワード抽出器EXは、そのランクの大きさに応じて重みを付けてもよい。例えば、キーワード抽出器EXは、キーワード抽出対象文書と最も類似するランク1位の類似文書には、1.0の重みを付与し、2番目にキーワード抽出対象文書と類似するランク2位の類似文書には、0.9の重みを付与し、3番目にキーワード抽出対象文書と類似するランク3位の類似文書には、0.8の重みを付与する、といったようにしてもよい。これによって、より文書間での共有性が高いキーワードを抽出することができる。
【0082】
[利用場面]
図10は、キーワード抽出器EXにより抽出されたキーワードの利用場面の一例を示す図である。図示の例では、ショッピングサイトの一ページを模式的に表している。図中R1で示す領域には、商品の紹介文が掲載されている。このような紹介文は、キーワードの抽出対象の文書として扱われる。例えば、紹介文には、商品の型番(図の例では「ABCDEF‐24」)などが含まれているが、類似文書の単語の出現回数を考慮しない一般的なTF-IDFの場合、型番を表す単語や語句の重みが大きくなり、その型番がキーワードとして抽出されやすい。しかしながら、その商品に似た商品を探すときには、型番よりも概念的に上位の意味をもつ単語や語句がキーワードとして相応しい。概念的に上位の意味をもつ単語や語句とは、他の商品紹介文に含まれる単語や語句と共起し易いものであり、図示の例では、「液晶テレビ」などの単語が該当する。
【0083】
本実施形態では、キーワード抽出対象文書に出現する単語Xが類似文書にも出現する回数(割合)に基づいてTF-IDFを求めるため、型番のような、そのページの特有の単語や語句(汎用的でない単語や語句)が抽出され難くなり、ショッピングサイト間での共有性が高いキーワードを抽出することができる。この結果、例えば、抽出したキーワードを、商品カテゴリを表す単語とした場合、商品が分類され得る商品カテゴリを網羅的に用意しておく必要がなくなる。例えば、商品がショッピングサイトに追加されるごとに、その商品が掲載されるウェブページの紹介文からキーワードを抽出し、その抽出したキーワードが既存の商品カテゴリを表す単語や語句であれば、新規追加された商品を既存の商品カテゴリに分類し、抽出したキーワードが既存の商品カテゴリを表す単語や語句でなければ、そのキーワードを基に新たな商品カテゴリを作成し、新規追加された商品を新規作成した商品カテゴリに分類する、といった運用を行うことができる。
【0084】
以上説明した第2実施形態によれば、キーワードの抽出対象とする文書に類似する複数の類似文書のうち、キーワードの抽出対象とする文書に出現するキーワードの候補が出現する類似文書の数に基づいて、キーワードの抽出対象とする文書からキーワードを抽出するため、より文書間での共有性が高いキーワードを抽出することができる。この結果、ユーザが文書を検索したときに、文書間での共有性が高いキーワードを利用することで、その文書に関連した関連文書を容易に検索することができ、ユーザが検索した文書により関連し、且つより多くの関連文書を提供することができる。この結果、ユーザの情報収集の効率を更に向上させることができる。
【0085】
<ハードウェア構成>
上述した実施形態の情報処理装置100は、例えば、
図11に示すようなハードウェア構成により実現される。
図11は、実施形態の情報処理装置100、100Aのハードウェア構成の一例を示す図である。
【0086】
情報処理装置100、100Aは、NIC100−1、CPU100−2、RAM100−3、ROM100−4、フラッシュメモリやHDDなどの二次記憶装置100−5、およびドライブ装置100−6が、内部バスあるいは専用通信線によって相互に接続された構成となっている。ドライブ装置100−6には、光ディスクなどの可搬型記憶媒体が装着される。二次記憶装置100−5、またはドライブ装置100−6に装着された可搬型記憶媒体に格納されたプログラムがDMAコントローラ(不図示)などによってRAM100−3に展開され、CPU100−2によって実行されることで、制御部110または110Aが実現される。制御部110または110Aが参照するプログラムは、ネットワークNWを介して他の装置からダウンロードされてもよい。
【0087】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。