以下、図面を参照して、本発明の実施形態を詳細に説明する。
図1は、本発明の実施形態における注目単語提示システム100のシステム構成の一例を示す図である。
注目単語提示システム100は、分析対象文書保存部110、ストリーム文書保存部120、検索ログ保存部150、およびユーザ端末160とローカルエリアネットワークを介して接続される。
注目単語提示システム100は、単語頻度算出部101と、単語絞り込み急騰度算出部102と、単語全体急騰度算出部103と、注目単語算出部104と、注目単語提示部105とを備える。
図1における全文検索システム140は、検索者端末130、分析対象文書保存部110、および検索ログ保存部150とローカルエリアネットワークを介して接続される。
全文検索システム140は検索者端末130から検索語を受け取ると、分析対象文書保存部110から検索語に応じた分析対象文書を取得して検索者端末130に送る一般的な検索システムである。さらに、全文検索システム140は検索者端末130から検索語を受け取ったとき、図3(c)のように検索語を含む検索ログデータ500を検索ログ保存部150に保存する。例えば、全文検索システムとして、顧客からの問い合せの文章をマーケティング担当者が分析目的で検索するシステムがありうる。
分析対象文書保存部110は、図3(a)のような分析対象文書データ300を保存している。分析対象文書データ300の各要素は、テキストを持つ分析対象文書である。なお、分析対象文書には、テキスト以外にもテキスト作成日時やテキスト作成者などの情報を含んでいてもよい。例えば分析対象文書保存部110に保存される分析対象文書データ300として、コールセンターにおける問い合せを保存した文書データを使うことができる。
ストリーム文書保存部120は、図3(b)のようなストリーム文書データ400を保存している。ストリーム文書データ400の各要素は、テキストと作成日時を持つストリーム文書である。ストリーム文書データ400は、マイクロブログ(例えばTwitter(登録商標))やニュースなど、時事性が強く幅広い話題を含む文書データから取得できる。
注目単語提示システム100は、分析対象文書保存部110に保存される分析対象文書データ300と、ストリーム文書保存部120に保存されるストリーム文書データ400と、検索ログ保存部150に保存される検索ログデータ500を入力として、図4(g)のような注目単語表900を作成する。注目単語提示システム100は、注目単語表900を作成する処理を定期的に(例えば毎日0時に1回)自動で行うことができ、作成された注目単語表900を記憶媒体に保持しておくことができる。
ユーザ端末160が注目単語提示システム100に注目単語の提示を要求すると、注目単語提示システム100は記憶媒体に保持された注目単語表900から注目単語の情報をユーザ端末160に送信し、ユーザ端末160は図10のような注目単語の情報を表示する。
図2は、本発明の実施形態における注目単語提示システム100、検索者端末130、全文検索システム140、ユーザ端末160に適用可能な情報処理装置のハードウェア構成の一例を示すブロック図である。
図2において、201はCPUで、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバー或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
また、205は入力コントローラで、キーボード(KB)209や不図示のマウス等のポインティングデバイス等からの入力を制御する。206はビデオコントローラで、ディスプレイ210等の表示器への表示を制御する。なお、表示器はCRTや、液晶ディスプレイ等の様々な種類が存在する。
207はメモリコントローラで、ブートプログラム,各種のアプリケーション,フォントデータ,ユーザファイル,編集ファイル,各種データ等を記憶する外部記憶装置(ハードディスク(HD))や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるCFカードメモリ等の外部メモリ211へのアクセスを制御する。
208は通信I/Fコントローラで、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上での表示を可能としている。また、CPU201は、ディスプレイ210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ211に格納されており、これらについての詳細な説明も後述する。
次に図5〜図9のフローチャートを用いて、本発明の実施形態における注目単語提示システム100が実行する処理について説明する。
図5のフローチャートは、注目単語提示システム100の単語頻度算出部101が単語頻度表600を作成する処理(単語頻度算出処理)の一例を示すフローチャートである。
単語頻度表600は図4(d)のように単語とその頻度の情報を持つ表である。作成された単語頻度表600は、単語絞り込み急騰度算出部102の入力になる。
ステップS1101では、分析対象文書保存部110に保存されている分析対象文書データ300から単語を抽出する。各分析対象文書のテキストに対して公知の形態素解析器により形態素解析を行い、品詞が名詞である形態素を単語として抽出する。単語を抽出する対象の分析対象文書は、分析対象文書データ300に含まれるすべての分析対象文書にできる。または、ユーザが指定する単語を含んだ分析対象文書のみを対象にしてもよい。または、分析対象文書が文書作成日時などの日時情報を持つ場合、特定の日時以降である分析対象文書のみを対象にしてもよい。
ステップS1102では、抽出された全ての単語で、その単語の頻度を計算する。単語の頻度は、S1101においてその単語を抽出した回数の合計として計算することができる。または、単語の頻度は、その単語を抽出できた分析対象文書の件数として計算してもよい。
ステップS1103では、抽出された全ての単語とその頻度を、単語頻度表600に追加する。
単語頻度算出処理の具体例として、図3(a)の分析対象文書データ300が入力された場合における、単語頻度表600の作成処理について説明する。簡単のため、分析対象文書データ300において省略された部分は存在しないものとする。
ステップS1101では、分析対象文書データ300から単語を抽出する。例えば、図3(a)において「クラウド上のシステムでも動かせるか」というテキストを持つ分析対象文書に対して、テキストの形態素解析を行い、その結果から品詞が名詞である「クラウド」、「上」、「システム」という単語が抽出できる。このような単語抽出の処理を、全ての分析対象文書に対して行う。
ステップS1102では、抽出された全ての単語で、その単語の頻度を計算する。図3(a)に表示されている分析対象文書では、「クラウド上のシステムでも動かせるか」および「クラウドと連携したい」というテキストから、どちらも「クラウド」という単語を1回ずつ抽出できる。単語「クラウド」を抽出した回数の合計が2回であるため、「クラウド」の頻度を2とする。このような頻度の計算を全ての単語に対して行う。
ステップS1103では、こうして求められた単語とその頻度の情報を、単語頻度表600に追加する。
図6のフローチャートは、注目単語提示システム100の単語絞り込み急騰度算出部102が単語絞り込み急騰度表700を作成する処理(単語絞り込み急騰度算出処理)の一例を示すフローチャートである。
単語絞り込み急騰度表700は、図4(e)のように、単語に対してその絞り込み急騰度、絞り込み単語リスト、および関連ストリーム文書リストの情報を持つデータである。
ステップS1201では、まずは注目単語提示システム100の記憶媒体上に、テキストからなる絞り込み単語を保存できる保存領域を用意しておく。その後、単語頻度表600から単語を絞り込み単語に追加する。絞り込み単語として追加する単語は、単語頻度表600における頻度が特定のしきい値以上である単語のみにしてもよい。または、単語頻度表600における頻度の順位が特定のしきい値より上位である単語のみにしてもよい。
ステップS1202では、検索ログ保存部150に保存された検索ログデータ500から、検索語を絞り込み単語に追加する。絞り込み単語として追加する検索語は、検索ログデータ500に含まれる全ての検索語にしてもよい。または、検索ログデータ500における出現回数が特定のしきい値以上である検索語のみにしてもよい。または、検索ログデータ500における出現回数順に検索語を並べたとき、順位が特定のしきい値より上位である検索語のみにしてもよい。
ステップS1203では、各絞り込み単語について繰り返す処理を開始する。
ステップS1204では、ストリーム文書保存部120に保存されたストリーム文書データ400から、絞り込み単語を用いてストリーム文書を絞り込む。絞り込む方法として、絞り込み単語をテキストの部分文字列として含むストリーム文書のみを残し、それ以外のストリーム文書は除くという方法が利用できる。
ステップS1205では、絞り込み結果であるストリーム文書のリストから、単語を抽出する。ストリーム文書のテキストに対して公知の形態素解析器により形態素解析を行い、品詞が名詞である形態素を単語として抽出する。以降では、ここで抽出された単語をストリーム単語と呼ぶこともある。
ステップS1206では、抽出された全てのストリーム単語に対して、ストリーム単語のトレンド性を示す指標である急騰度を計算する。古いストリーム文書ではあまり使われないが、最近のストリーム文書ではよく使われるストリーム単語をトレンドを示す単語とみなし、急騰度が高くなるようにする。
急騰度の計算には、ストリーム単語が出現したストリーム文書の作成日時と、単語絞り込み急騰度表700の作成処理を開始した日時である現在日時の情報を用いる。作成日時が現在日時に近い過去であるストリーム文書において出現回数の多いストリーム単語が、急騰度が高くなるような計算方法にする。急騰度の計算方法の1つとして、特許文献1に示される語句話題度算出手段によって求められる話題度をストリーム単語の急騰度とすることができる。
ステップS1207では、ストリーム単語に関して単語絞り込み急騰度表700に情報を追加する。単語絞り込み急騰度表700の単語欄にはストリーム単語を、絞り込み急騰度欄には急騰度を、絞り込み単語リストには現在の絞り込み単語を、関連ストリーム文書リストには絞り込み結果のストリーム文書をそれぞれ追加する。
なお、絞り込み単語について繰り返し処理を行う途中で、単語絞り込み急騰度表700に既にあるストリーム単語が追加対象とされる場合がある。その場合は、そのストリーム単語に関して、絞り込み急騰度、絞り込み単語リスト、関連ストリーム文書リストを更新する。その際、絞り込み急騰度は既存の値と現在の絞り込み単語におけるストリーム単語の急騰度で比較し、大きい方の値に置き換える。また、絞り込み単語リスト、関連ストリーム文書リストは既存のリストの末尾に追加する。
ステップS1208では、全ての絞り込み単語について処理を実行した場合、本フローチャートの処理を終了する。一方、未実行の絞り込み単語が残っている場合は、未実行の絞り込み単語について処理を行うため、ステップS1204に処理を戻す。
単語絞り込み急騰度算出処理の具体例として、図4(d)の単語頻度表600と図3(c)の検索ログデータ500と図3(b)のストリーム文書データ400が入力された場合における、単語絞り込み急騰度算出処理について説明する。簡単のため、図4(d)と図3(c)と図3(b)において省略された部分は存在しないものとする。
ステップS1201では、図4(d)の単語頻度表600から単語を絞り込み単語に追加する。頻度の順位が2位までの単語を絞り込み単語に追加する場合、「サーバー」、「メンテナンス」が絞り込み単語となる。
ステップS1202では、図3(c)の検索ログデータ500から検索語を絞り込み単語に追加する。検索ログデータ500において出現回数が最上位の検索語を絞り込み単語にする場合、2回出現する「故障」が絞り込み単語となる。
このようにして、「サーバー」、「メンテナンス」、および「故障」の3単語が絞り込み単語となる。
ステップS1203では、各絞り込み単語について繰り返す処理を開始する。説明の都合上、「メンテナンス」、「故障」、「サーバー」の順で説明する。なお、処理の順番は結果に影響しない。
ステップS1204とステップS1205により、図3(b)のようなストリーム文書データ400から、絞り込み単語を用いてストリーム文書を絞り込み、その結果のストリーム文書リストから単語を抽出する。
現在の絞り込み単語が「メンテナンス」であるとき、ストリーム文書データ400から、テキストに「メンテナンス」を含んだ「IoTを活用したメンテナンス事業が成長」のストリーム文書が絞り込み結果として残る。そのストリーム文書から、ストリーム単語として「IoT」「活用」「メンテナンス」「事業」「成長」という単語が抽出できる。また、ストリーム文書の作成日時によりこれらの単語は2017/5/10 19:06:54に抽出したストリーム単語である、という情報も保持しておく。
ステップS1206では、抽出された全てのストリーム単語に対して、特許文献1に示される語句話題度算出手段によって話題度を計算し、それをストリーム単語の急騰度とする。例えば、ストリーム単語「IoT」の急騰度が4.1、「事業」の急騰度が0.2などになったとする。
ステップS1207では、ストリーム単語に関する情報を単語絞り込み急騰度表700に追加する。そのとき、単語絞り込み急騰度表700に、単語が「IoT」、絞り込み急騰度が4.1、絞り込み単語リストが「メンテナンス」、関連ストリーム文書リストが「IoTを活用したメンテナンス事業が成長」であるデータを追加する。その他のストリーム単語「活用」、「メンテナンス」、「事業」、および「成長」に関しても同様の処理を行う。
続いて、絞り込み単語が「故障」であるとき、ステップS1204〜ステップS1206の処理を行ったとする。
絞り込み結果のストリーム文書には「故障予測のためのIoTサービス導入 − C社」のテキストを持つストリーム文書が残る。このとき、例えばストリーム単語「IoT」の急騰度が5.2となったとする。
ここで単語絞り込み急騰度算出部102はストリーム単語「IoT」を単語として単語絞り込み急騰度表700に追加しようとするが、絞り込み単語が「メンテナンス」であったときに既に「IoT」のデータは追加されている。そのため、単語「IoT」に関して、絞り込み急騰度と絞り込み単語リストと関連ストリーム文書リストを更新する。絞り込み急騰度は、単語絞り込み急騰度表700における既存の絞り込み急騰度である4.1(絞り込み単語「メンテナンス」のときの値)と、絞り込み単語「故障」における急騰度である5.2を比較し、より大きい値である5.2を採用して更新する。さらに、絞り込み単語リストには「故障」を追加し、関連ストリーム文書リストにも「故障予測のためのIoTサービス導入 − C社」というテキストを追加する。
絞り込み単語「サーバー」についても同様に処理を行い、図4(e)のような単語絞り込み急騰度表700が作成される。
図7のフローチャートは、注目単語提示システム100の単語全体急騰度算出部103が単語全体急騰度表800を作成する処理(単語全体急騰度算出処理)の一例を示すフローチャートである。
単語全体急騰度表800は、図4(f)のように単語とその全体急騰度の値を持つ表である。
ステップS1301では、ストリーム文書保存部120に保存されているストリーム文書データ400から、全てのストリーム文書で単語を抽出する。単語抽出の処理は、単語絞り込み急騰度表700の作成処理(図6)におけるステップS1205と同様に行う。
ステップS1302では、抽出された全ての単語に対して、ストリーム文書全体における単語のトレンド性を示す指標である急騰度を計算する。急騰度の計算は、単語絞り込み急騰度表700の作成処理(図6)におけるステップS1206の急騰度計算と同様に行う。
ステップS1303では、抽出された単語とその急騰度の一覧を、単語全体急騰度表800に追加する。ただし、全体急騰度欄に追加する値は、単語の急騰度にする。
図8のフローチャートは、注目単語提示システム100の注目単語算出部104が注目単語表900を作成する処理(注目単語算出処理)の一例を示すフローチャートである。
注目単語表900は、図4(g)のように、単語に対してその関連分析対象文書リスト、絞り込み単語リスト、関連ストリーム文書リスト、絞り込み急騰度、および全体急騰度を持つ表である。
ただし、関連分析対象文書リスト、絞り込み単語リスト、関連ストリーム文書リスト、および絞り込み急騰度は空のことがある。関連ストリーム文書リストが存在する場合、絞り込み単語リストと絞り込み急騰度も存在することが保証されるようにする。また、関連分析対象文書リストと関連ストリーム文書リストは少なくとも一方が空でないようにする。
ステップS1401では、まずは注目単語提示システム100の記憶媒体上に、テキストからなる再絞り込み単語を保存できる保存領域を用意しておく。その後、単語絞り込み急騰度表700から絞り込み急騰度に基づいて、単語を再絞り込み単語に追加する。再絞り込み単語に追加する単語は、絞り込み急騰度が特定のしきい値以上である単語のみとすることができる。または、単語絞り込み急騰度表700における絞り込み急騰度の順位が特定のしきい値より上位である単語のみにしてもよい。
ステップS1402では、単語全体急騰度表800から全体急騰度に基づいて、単語を再絞り込み単語に追加する。再絞り込み単語に追加する単語は、全体急騰度が特定のしきい値以上である単語のみとすることができる。または、単語全体急騰度表800における全体急騰度の順位が特定のしきい値より上位である単語のみにしてもよい。
なお、ステップS1401ですでに再絞り込み単語に追加されている単語は、ステップS1402で二重に追加はしない。
ステップS1403では、各再絞り込み単語について繰り返す処理を開始する。
ステップS1404では、分析対象文書保存部110に保存された分析対象文書データ300から、再絞り込み単語を用いて分析対象文書を絞り込む。絞り込む方法として、再絞り込み単語をテキストの部分文字列として含む分析対象文書のみを残し、それ以外の分析対象文書は除くという方法が利用できる。
絞り込まれた結果として、分析対象文書が0件となる場合も、1件以上になる場合もある。
ステップS1405では、再絞り込み単語が注目単語表900に加えられる条件を満たしているかどうか判定する。
ステップS1404で絞り込まれた結果の分析対象文書が1件以上ある場合、Yesと判定する。または、再絞り込み単語がステップS1401において単語絞り込み急騰度表700から選出された単語であるなら、Yesと判定する。
それ以外の場合はNoと判定する。言い換えると、Noと判定される条件は、絞り込まれた結果の分析対象文書が0件で、かつ再絞り込み単語が単語全体急騰度表800から選出されたことである。この条件により、注目単語表900に含まれる単語は、関連分析対象文書リストと関連ストリーム文書リストの少なくとも一方が空でないことが保証される。
Yesと判定された場合、ステップS1406に処理を移す。Noと判定された場合、ステップS1407に処理を移す。
ステップS1406では、再絞り込み単語とそれに付随する情報を注目単語表900に追加する。
この処理では、まず、単語欄には再絞り込み単語を追加する。続いて、関連分析対象文書リスト欄には、ステップS1404で絞り込まれた結果の分析対象文書のテキストを追加する。ただし、分析対象文書が0件の場合には、何も追加せず空欄とする。続いて、絞り込み単語リストと関連ストリーム文書リストと絞り込み急騰度は、単語絞り込み急騰度表700から再絞り込み単語についてのデータを取得してきて、そのまま追加する。ただし、単語絞り込み急騰度表700にデータがない単語については、何も追加せず空欄とする。続いて、全体急騰度は、単語全体急騰度表800から再絞り込み単語についてのデータを取得してきて、そのまま追加する。
ステップS1407では、全ての再絞り込み単語について処理を実行した場合、本フローチャートの処理を終了する。一方、未実行の再絞り込み単語が残っている場合は、未実行の再絞り込み単語について処理を行うため、ステップS1404に処理を戻す。
注目単語算出処理の具体例として、図4(e)の単語絞り込み急騰度表700と図4(f)の単語全体急騰度表800が入力された場合における、注目単語算出処理について説明する。簡単のため、図4(e)と図4(f)において省略された部分は存在しないものとする。
ステップS1401で、図4(e)の単語絞り込み急騰度表700から絞り込み急騰度の上位2単語を再絞り込み単語に追加する場合、「IoT」、「クラウド」が再絞り込み単語に追加される。
ステップS1402で、図4(f)の単語全体急騰度表800から全体急騰度の上位3単語を再絞り込み単語に追加する場合、「民泊」、「IoT」、「チャット」を再絞り込み単語への追加候補とする。しかし、「IoT」はステップS1401ですでに再絞り込み単語に追加されているため、ここでは追加しない。結果として、「民泊」、「チャット」の2単語が再絞り込み単語に追加される。
このようにして、単語絞り込み急騰度表700から「IoT」、「クラウド」が、単語全体急騰度表800から「民泊」、「チャット」が再絞り込み単語として選出される。
ステップS1403では、各再絞り込み単語について繰り返す処理を開始し、ステップS1407にて繰り返しの終了判断をする。
ステップS1404とステップS1405では、再絞り込み単語を用いて分析対象文書を絞り込み、その絞り込み結果に応じて再絞り込み単語を注目単語表900に追加するかどうかを判断し、追加する場合は、ステップS1406で追加処理を行う。
ここでは、「IoT」、「クラウド」、「民泊」、および「チャット」の各単語について上記の処理を行う。説明の都合上、「クラウド」、「IoT」、「チャット」、「民泊」の順で説明する。なお、処理の順番は結果に影響しない。
再絞り込み単語「クラウド」を用いて分析対象文書を絞り込むと、結果として「クラウド上のシステムでも動かせるか」と「クラウドと連携したい」の2件の文書が残る。「クラウド」は、単語絞り込み急騰度表700から選出された単語であり、かつ絞り込み結果の分析対象文書が1件以上あるため、注目単語表900に加える単語であると判定される。
判定の結果、注目単語表900の単語欄には「クラウド」を追加する。関連分析対象文書リスト欄には、絞り込み結果の分析対象文書である「クラウド上のシステムでも動かせるか」と「クラウドと連携したい」の2件のテキストを追加する。絞り込み単語リスト欄と関連ストリーム文書リスト欄と絞り込み急騰度欄には、図4(e)の単語絞り込み急騰度表700の値をそのまま追加する。すなわち絞り込み単語リスト欄は「サーバー」が、関連ストリーム文書リスト欄は「A社、業務用サーバーのクラウド移行を完了」のストリーム文書が、絞り込み急騰度欄は4.6がそれぞれ追加される。さらに、全体急騰度には全体急騰度表から取得した値2.6を追加する。
続いて、再絞り込み単語「IoT」を用いて分析対象文書を絞り込むと、結果は0件となる。絞り込み結果の分析対象文書は0件であるものの、「IoT」は単語絞り込み急騰度表700から選出された単語であるため、注目単語表900に加える単語であると判定される。
注目単語表900に追加する方法は「クラウド」と同様である。ただし、絞り込み結果の分析対象文書が0件であるため、関連分析対象文書リスト欄は空欄とする。
続いて、再絞り込み単語「チャット」を用いて分析対象文書を絞り込むと、結果は「チャットUIで操作する機能が欲しい」の1件の文書となる。「チャット」は、単語全体急騰度表800から選出された単語であるものの、絞り込み結果の分析対象文書が1件以上であるため、注目単語表900に加える単語であると判定される。
注目単語表900に追加する方法は「クラウド」と同様である。ただし、単語絞り込み急騰度表700に単語「チャット」に関する情報が存在しないため、絞り込み単語リスト欄と関連ストリーム文書リスト欄と絞り込み急騰度欄は空欄とする。
続いて、再絞り込み単語「民泊」を用いて分析対象文書を絞り込むと、結果は0件となる。「民泊」は、絞り込まれた結果の分析対象文書が0件で、かつ単語全体急騰度表800から選出された単語であるため、注目単語表900には加えない。
以上のようにして、図4(g)の注目単語表900が作成される。
図9のフローチャートは、注目単語提示システム100の注目単語提示部105がユーザ端末160から注目単語の提示要求を受け取ったときに、ユーザ端末160へ注目単語の情報を送信する処理(注目単語提示処理)の一例を示すフローチャートである。
ユーザ端末160では、図10のように、単語と注目理由とストリーム文書または分析対象文書からなる関連文書を並べた形式で注目単語の情報を表示できる。また、ストリーム文書である関連文書と分析対象文書である関連文書それぞれで、文書の性質を示す見出しも表示できる。
ステップS1501では、注目単語提示システム100の記憶媒体に保持された注目単語表900から単語を取得する。以降これらの単語は注目単語と呼ぶ。
ステップS1502では、注目単語表900の内容に基づいて、注目単語の並べ替えを行う。
一例として、以下のような方法で並べ替えを行うことができる。ここでは、注目単語に優先度の数値を設定して、優先度の降順に並べることにする。
まず、注目単語に対して、関連分析対象文書リストと関連ストリーム文書リストに値が存在するかどうかを判定する。
関連分析対象文書リストと関連ストリーム文書リストがどちらも存在する場合、優先度を3とする。さらに、優先度3の注目単語が複数ある場合、それらの注目単語は絞り込み急騰度の降順で並べる。
関連ストリーム文書リストのみが存在する場合、優先度を2とする。さらに、優先度2の注目単語が複数ある場合、それらの注目単語は絞り込み急騰度の降順で並べる。
関連分析対象文書リストのみが存在する場合、優先度を1とする。さらに、優先度1の注目単語が複数ある場合、それらの注目単語は全体急騰度の降順で並べる。
ユーザ端末160においては、この順序で注目単語を表示する。
ステップS1503では、各注目単語について繰り返す処理を開始する。
この繰り返し内部の処理により、図10のようにそれぞれの注目単語に対して単語、注目理由、関連文書を持つ表示用データを作成する。
ステップS1504では、注目単語を表示用データの単語欄に追加する。
ステップS1505では、関連分析対象文書の有無を判定する。注目単語表900において、現在の注目単語に対して関連分析対象文書リストに値が存在すれば、Yesと判定し、ステップS1506に処理を移す。現在の注目単語に対して関連分析対象文書リストに値が存在しないなら、Noと判定し、ステップS1508に処理を移す。
ステップS1506では、注目単語表900にある関連分析対象文書リストを、表示用データの関連文書欄に追加する。さらに、関連文書欄に見出しを追加することもできる。見出しには、注目単語提示システム100に組み込まれた値を用いることができる。図10の例では「問い合せ文書」という見出しが設定されている。
ステップS1507では、注目単語表900にある関連分析対象文書リストの件数を、表示用データの注目理由欄に追加する。このとき、件数と注目単語提示システム100に組み込まれた定型テキストを組み合わせて注目理由欄に追加することもできる。図10の例では、「問い合せ文書X件」という定型テキストから「X」の部分に件数を挿入して、注目理由欄に追加している。
ステップS1508では、関連ストリーム文書の有無を判定する。
注目単語表900において、現在の注目単語に対して関連ストリーム文書リストに値が存在すれば、Yesと判定し、ステップS1510に処理を移す。なお、関連ストリーム文書が存在する場合、絞り込み単語リストも存在することが保証される。
現在の注目単語に対して関連ストリーム文書リストに値が存在しないなら、Noと判定し、ステップS1509に処理を移す。
ステップS1509では、「世の中のトレンドである」という旨のテキストを、表示用データの注目理由欄に追加する。実際のテキストは、注目単語提示システム100に組み込まれた定型テキストを用いる。図10の例では、「世の中で話題」という定型テキストを注目理由欄に追加している。
ステップS1510では、注目単語表900における絞り込み単語リストを、表示用データの注目理由欄に追加する。このとき、絞り込み単語リストと注目単語提示システム100に組み込まれた定型テキストを組み合わせて注目理由欄に追加することもできる。図10の例では、「Xとの関連語で、世の中で話題」という定型テキストから「X」の部分に絞り込み単語リストを挿入して、注目理由欄に追加している。
ステップS1511では、注目単語表900における関連ストリーム文書リストを、表示用データの関連文書欄に追加する。さらに、関連文書欄に見出しを追加することもできる。見出しには、注目単語提示システム100に組み込まれた値を用いることができる。図10の例では「ニュース」という見出しが設定されている。
ステップS1512では、全ての注目単語について処理を実行した場合、ステップS1513に処理を移す。一方、未実行の注目単語が残っている場合は、未実行の注目単語について処理を行うため、ステップS1504に処理を戻す。
ステップS1513では、ユーザ端末160へ注目単語に関する表示用データの一覧を送信する。
注目単語提示処理の具体例として、図4(g)の注目単語表900が入力され、図10のような画面を表示するようユーザ端末160にデータ送信するまでの、注目単語提示処理について説明する。
なお、図4(g)において省略された部分については説明の中で適宜補足していく。
ステップS1501では、注目単語表900から注目単語として「クラウド」、「IoT」、「チャット」を取得する。
ステップS1502では、注目単語表900の内容に基づいて、注目単語の並べ替えを行う。
「クラウド」は、関連分析対象文書リストと関連ストリーム文書リストがどちらも存在するため、優先度を3とする。
「IoT」は、関連分析対象文書リストが存在せず関連ストリーム文書リストが存在するため、優先度を2とする。
「チャット」は、関連分析対象文書リストが存在して関連ストリーム文書リストが存在しないため、優先度を1とする。
以上より、注目単語の順番は優先度の降順である「クラウド」、「IoT」、「チャット」の順となる。
ステップS1503では、各注目単語について繰り返す処理を開始する。
ステップS1504では、注目単語を表示用データの単語欄に追加する。
ステップS1505、S1506、S1507により、関連分析対象文書がある注目単語に対して、関連分析対象文書の情報を用いて表示用データの理由欄と関連文書欄に情報を追加する。
注目単語「クラウド」の場合、関連分析対象文書に「クラウド上のシステムでも動かせるか」「クラウドと連携したい」というテキストがある。
ここで、図4(g)において省略された部分にさらに8件のテキストがあり、全体で10件のテキストがあるものとする。
注目単語「クラウド」の表示用データにおいて、関連文書欄には見出し「問い合せ文書」とこれらの関連分析対象文書のテキストが追加される。
さらに、関連分析対象文書の件数を用いて、注目理由欄には「問い合せ文書10件」というテキストが追加される。
注目単語「IoT」の場合、関連分析対象文書が存在しないため、何もせずステップS1508へ処理を移す。
注目単語「チャット」では「クラウド」と同様の処理を行う。
ステップS1508により、関連ストリーム文書が存在する注目単語と存在しない注目単語で処理が分岐する。
注目単語「クラウド」の場合、関連ストリーム文書が存在するため、ステップS1510、S1511を実行する。
注目単語表900の絞り込み単語リストから「サーバー」を取得して、注目理由欄に『「サーバー」との関連語で、世の中で話題』というテキストを追加する。さらに、注目単語表900の関連ストリーム文書リストから「A社、業務用サーバーのクラウド移行を完了」などのテキストを取得し、見出し「ニュース」とともに関連文書欄に追加する。
注目単語「IoT」では「クラウド」と同様の処理を行う。
注目単語「チャット」の場合、関連ストリーム文書が存在しないため、ステップS1509を実行して、注目理由欄に「世の中で話題」という定型テキストを追加する。
以上のように表示用データを作成し、最後にステップS1513で、ユーザ端末160に図10の画面を表示させるために、ユーザ端末160へ作成した注目単語に関する表示用データを送信する。
上記により、製品やサービスの問い合せ文書から世の中のトレンドを反映した文書を効率よく発見することと、世の中のトレンドの中で製品やサービスと関係が深いトレンドを発見することが可能になる。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明におけるプログラムは、各図に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は各図の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは各図の各装置の処理方法ごとのプログラムであってもよい。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク、ソリッドステートドライブ等を用いることができる。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバー、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。