JP6260678B2 - Information processing apparatus, information processing method, and information processing program - Google Patents
Information processing apparatus, information processing method, and information processing program Download PDFInfo
- Publication number
- JP6260678B2 JP6260678B2 JP2016236549A JP2016236549A JP6260678B2 JP 6260678 B2 JP6260678 B2 JP 6260678B2 JP 2016236549 A JP2016236549 A JP 2016236549A JP 2016236549 A JP2016236549 A JP 2016236549A JP 6260678 B2 JP6260678 B2 JP 6260678B2
- Authority
- JP
- Japan
- Prior art keywords
- search
- information
- item
- information processing
- score
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
本発明は、データを解析する技術に関する。 The present invention relates to a technique for analyzing data.
近年、インターネットの普及を背景にして、インターネット上の掲示板やソーシャルネットワークサービス(SNS: Social Network Service)など、ユーザが手軽に口コミ情報等の文章をアップロードして、その文章を公開することができるサービスが増えている。また、このようなインターネット上の口コミ情報等を把握することは、企業のマーケティング戦略の面などから注目されている。
しかし、個々のユーザによってアップロードされたインターネット上の文章には、省略された語句や表記揺れが多いため、そのような文章から適切なキーワードを迅速に見つけにくいという問題があった。このような問題に対応する技術として、例えば特開2011−3157号公報(特許文献1)のような技術が存在する。
In recent years, with the spread of the Internet, services such as bulletin boards on the Internet and social network services (SNS: Social Network Service) that allow users to easily upload word-of-mouth information and publish the text Is increasing. In addition, grasping such word-of-mouth information on the Internet is attracting attention from the viewpoint of corporate marketing strategies.
However, since sentences on the Internet uploaded by individual users have many omitted phrases and notations, there is a problem that it is difficult to quickly find an appropriate keyword from such sentences. As a technique for dealing with such a problem, there is a technique such as Japanese Patent Application Laid-Open No. 2011-3157 (Patent Document 1).
特許文献1には、テキストデータを解析し、商品またはサービスであるアイテムを特定し、アイテムごとにユーザの口コミ情報を要約する技術が記載されている。しかしながら、解析対象のテキストデータが、どのアイテムに対応するかの判定精度が必ずしも十分ではなかった。例えば、記述の対象が音楽や映画などの場合、その名称は非常に多様であり、名称を示す文字列に明確な規則性が存在しないため、記述の対象となっているアイテムを特定する精度が十分でない場合があった。このため、テキストデータにおいて記述の対象となっているアイテムを特定できなかったり、実際に記述の対象となっているアイテムとは異なるアイテムを特定したりしてしまう場合があった。
本発明はこのような問題点に鑑みなされたものであり、テキストデータにおいて記述の対象となっている情報を精度良く特定することを目的とする。 The present invention has been made in view of such problems, and an object thereof is to accurately specify information to be described in text data.
本発明は上述した従来の技術の課題を解決するため、データベースを検索し、検索条件に対応した複数の情報を取得する検索部と、前記複数の情報間の類似度に基づくスコアを計算する類似度計算部と、前記スコアに基づいて、前記検索条件の妥当性を判定する妥当性判定部とを備えることを特徴とする情報処理装置を提供する。
また、本発明は上述した従来の技術の課題を解決するため、複数の検索条件を用いてデータベースを検索し、複数の情報からなり前記複数の検索条件それぞれに対応する検索結果セットを複数取得する検索部と、前記検索結果セットに含まれる複数の情報間の類似度に基づいて、複数の前記検索結果セットそれぞれに対応する複数のスコアを計算する類似度計算部と、前記スコアが高い前記検索結果セットに含まれる情報を優先的に出力する妥当性判定部とを備えることを特徴とする情報処理装置を提供する。
また、本発明は上述した従来の技術の課題を解決するため、1または複数のコンピュータが実行する情報処理方法であって、データベースを検索し、検索条件に対応した複数の情報を取得する検索ステップと、前記検索ステップにおいて取得した前記複数の情報間の類似度に基づくスコアを計算する類似度計算ステップと、前記類似度計算ステップで計算された前記スコアに基づいて、前記検索条件の妥当性を判定する妥当性判定ステップとを含むことを特徴とする情報処理方法を提供する。
また、本発明は上述した従来の技術の課題を解決するため、1または複数のコンピュータが実行する情報処理方法であって、複数の検索条件を用いてデータベースを検索し、複数の情報からなり前記複数の検索条件それぞれに対応する検索結果セットを複数取得する検索ステップと、前記検索ステップにおいて取得された前記検索結果セットに含まれる複数の情報間の類似度に基づいて、複数の前記検索結果セットそれぞれに対応する複数のスコアを計算する類似度計算ステップと、前記類似度計算ステップで計算された前記スコアが高い前記検索結果セットに含まれる情報を優先的に出力する妥当性判定ステップとを含むことを特徴とする情報処理方法を提供する。
また、本発明は上述した従来の技術の課題を解決するため、1または複数のコンピュータを、データベースを検索し、検索条件に対応した複数の情報を取得する検索部、前記検索部において取得した前記複数の情報間の類似度に基づくスコアを計算する類似度計算部、前記類似度計算部で計算された前記スコアに基づいて、前記検索条件の妥当性を判定する妥当性判定部として機能させることを特徴とする情報処理プログラムを提供する。
また、本発明は上述した従来の技術の課題を解決するため、1または複数のコンピュータを、複数の検索条件を用いてデータベースを検索し、複数の情報からなり前記複数の検索条件それぞれに対応する検索結果セットを取得する検索部、前記検索部において取得された前記検索結果セットに含まれる複数の情報間の類似度に基づいて、複数の前記検索結果セットそれぞれに対応する複数のスコアを計算する類似度計算部、前記類似度計算部で計算された前記スコアが高い前記検索結果セットに含まれる情報を優先的に出力する妥当性判定部として機能させることを特徴とする情報処理プログラムを提供する。
In order to solve the above-described problems of the prior art, the present invention searches a database and acquires a plurality of information corresponding to a search condition, and a similarity for calculating a score based on the similarity between the plurality of information There is provided an information processing apparatus comprising: a degree calculation unit; and a validity determination unit that determines validity of the search condition based on the score.
Further, since the present invention is to solve the problems of the prior art described above, it acquires a plurality of search result set searches the database, corresponding to the plurality of search conditions Ri Do a plurality of information using multiple search criteria a search unit that, said based on the similarity between a plurality of information included in the search result set, the similarity calculation unit for calculating a plurality of scores corresponding to a plurality of said search result set, the score is high There is provided an information processing apparatus comprising a validity determination unit that preferentially outputs information included in the search result set .
Further, the present invention is an information processing method executed by one or a plurality of computers to solve the above-described problems of the prior art, and a search step of searching a database and acquiring a plurality of information corresponding to a search condition A similarity calculation step for calculating a score based on the similarity between the plurality of pieces of information acquired in the search step, and the validity of the search condition based on the score calculated in the similarity calculation step. An information processing method characterized by including a validity determination step for determination.
Further, the present invention is to solve the problems of the prior art described above, an information processing method of one or more computers to perform searches the database by using a plurality of search conditions, Ri Do from multiple wherein the plurality of search conditions set of search results corresponding to the respective the search step acquires a plurality, and based on the similarity between a plurality of information included in the search result set obtained at the retrieval step, a plurality of the search A similarity calculation step for calculating a plurality of scores corresponding to each result set; and a validity determination step for preferentially outputting information included in the search result set having a high score calculated in the similarity calculation step; The information processing method characterized by including this is provided.
Further, in order to solve the above-described problems of the conventional technology, the present invention searches one or a plurality of computers for a database and acquires a plurality of information corresponding to a search condition, and the search unit acquires the information. A similarity calculation unit that calculates a score based on a similarity between a plurality of pieces of information, and a validity determination unit that determines the validity of the search condition based on the score calculated by the similarity calculation unit An information processing program is provided.
Further, since the present invention is to solve the problems of the prior art described above, one or more computers to search the database using a plurality of search conditions, corresponding to the plurality of search conditions Ri Do from multiple search unit acquires a search result set, and based on the similarity between a plurality of information contained in the acquired set of search results at the search unit, a plurality of scores corresponding to a plurality of said search result set An information processing program that functions as a validity determination unit that preferentially outputs information included in the search result set having a high score calculated by the similarity calculation unit, the similarity calculation unit to calculate provide.
本発明によれば、テキストデータにおいて記述の対象となっている情報を精度良く特定することができる。 According to the present invention, information to be described in text data can be specified with high accuracy.
以下、本発明のテキスト情報処理装置、テキスト情報処理方法、及びテキスト情報処理プログラムについて、図面を参照して説明する。なお、図面中において、同一のものは同じ符号を付す。
また、以下の説明におけるアイテムは、音声、音楽、映像、ウェブページ等のコンテンツや様々な物品であってもよいし、金融商品、不動産、人物に関する情報等であってもよい。また、以下の説明におけるアイテムは、有形か無形かを問わず、有料か無料かも問わない。
Hereinafter, a text information processing apparatus, a text information processing method, and a text information processing program according to the present invention will be described with reference to the drawings. In the drawings, the same components are denoted by the same reference numerals.
In addition, the items in the following description may be contents such as voice, music, video, web pages and various articles, and may be information on financial products, real estate, persons, and the like. The items in the following description may be paid or free regardless of whether they are tangible or intangible.
<第1実施形態>
図1は、第1実施形態のテキスト情報処理装置1を含むシステム全体の構成例を示すブロック図である。
このシステムには、テキスト情報処理装置1や、テキストデータサーバ(ブログサーバ)2、アイテムデータベース(アイテムデータサーバ)3、利用者の端末装置4などが含まれ、それぞれがネットワーク20を介して通信可能である。なお、テキスト情報処理装置1は例えばサーバである。
また、テキストデータサーバ2はテキストデータを記憶し、アイテムデータベース3はアイテムに関する情報を記憶する。
以下の説明では、テキスト情報処理装置1が処理するテキストデータの一例としてブログデータを用いて説明する。ブログデータとは、ユーザによって作成されたテキストデータを含むものである。例えば、ユーザが、ソーシャルネットワークサービスを利用して作成したテキストデータ(ブログ記事)を含むものである。ソーシャルネットワークサービスとして、例えば、Twitter(登録商標)、Facebook(登録商標)、mixi(登録商標)などがある。
<First Embodiment>
FIG. 1 is a block diagram illustrating a configuration example of the entire system including the text
This system includes a text
The
In the following description, blog data is used as an example of text data processed by the text
また、テキストデータサーバ2とアイテムデータベース3はそれぞれ別の主体として記述しているが、それらの一部、または全てがテキスト情報処理装置1と同一の主体となるように構成されていてもよい。
Further, although the
テキスト情報処理装置1は、テキストデータ収集部10、キーワード集合生成部11、アイテム特定部12、及びランキング情報作成部13という4つの処理部を有して構成されている。これら4つの処理部は一体であってもよいし、それぞれ別体であってもよい。また、単一のCPUやDSPを用いて構成してもよいし、複数のCPUやDSP等を用いて構成してもよい。
また、テキスト情報処理装置1は、キーワードグループ記憶部5、テキストデータ記憶部6、スコア記憶部7、アイテム算出結果記憶部8、及びアイテムランキング情報記憶部9を有して構成されている。これら5つの記憶部は一体であってもよいし、それぞれ別体であてもよい。また、単一のハードディスクドライブ(HDD)やフラッシュメモリ等を用いて構成してもよいし、複数のHDDやフラッシュメモリ等を用いて構成してもよい。
The text
The text
テキストデータ収集部10は、テキストデータを記憶しているテキストデータサーバ2より、ブログ等の記事テキスト(テキストデータ)と、その作成者を示すユーザ識別子、及び記事作成更新日といった属性情報を取得し、テキストデータ記憶部6に保存する。なお、ユーザ識別子とは、テキストデータの作成に関連するユーザ、又は、テキストデータの作成に関連する端末装置、を識別する識別子である。なお、テキストデータ記憶部6は必ずしも必要ではなく、テキストデータサーバ2が、テキストデータ記憶部6の役割を兼ね備えていてもよい。
The text
キーワード集合生成部11は、不要文字列処理部14と、キーワード抽出部15と、グルーピング処理部16とを有している。キーワード集合生成部11は、テキストデータ収集部10によって取得したテキストデータから、アイテムを特定するためのキーワードを抽出し、キーワードグループ(検索キー)を生成する役割を持つ。なお、詳しくは後述するが、このキーワードグループを用いて検索することとなる。
キーワード集合生成部11の不要文字列処理部14は、アイテム情報に関係しない不要な情報を除いたテキストデータを生成する。アイテム情報に関係しない不要な情報とは、例えば、文書リンク情報やメタタグなどの情報である。不要文字列処理部14における処理については後に詳述する。
The keyword set generation unit 11 includes an unnecessary character
The unnecessary character
キーワード集合生成部11のキーワード抽出部15は、不要文字列処理部14によって加工されたテキストデータからキーワードを抽出する。
キーワード集合生成部11のグルーピング処理部16は、キーワード抽出部15によって切り出された1又は複数のキーワードをグループ化して、そのグループ化した、1又は複数のキーワードの集合であるキーワードグループを、キーワードグループ記憶部5へ保存する。なお、1つのキーワードしか含まない場合であってもキーワードグループと称することとする。
The
The
アイテム特定部12は、検索部17と類似度計算部18と妥当性判定部19とを有しており、キーワード集合生成部11によって生成されたキーワードグループを用いて、アイテムデータベース3からアイテム情報を検索し、その検索結果で得られた複数のアイテム情報間の類似度からキーワードの妥当性を判定する役割を持つ。
The
アイテム特定部12の検索部17は、キーワード集合生成部11によって生成されたキーワードグループを使用し、アイテムデータベース3を検索する。そして、複数のアイテム情報からなる検索結果セットが得られた場合、アイテム特定部12の類似度計算部18は、複数のアイテム情報間の類似度を計算する。さらに、類似度計算部18は、複数のアイテム情報間の類似度を用いて、キーワードグループ毎に後述する算出式で検索結果セットに関するスコアを求め、スコア記憶部7へ記録する。
The
アイテム特定部12の妥当性判定部19は、類似度計算部18が算出したスコアと閾値θとを比較して、アイテムデータベース3の検索に使用したキーワードグループの妥当性を判定する。そして、妥当であると判定されたキーワードグループに対応する検索結果セットを用いて、記事テキスト(テキストデータ)に関連するアイテムを特定する。妥当性判定部19は、その特定したアイテム(アイテム識別子)と、そのキーワードグループを抽出した元のテキストデータのブログ識別子と、を関連付けて、アイテム算出結果記憶部8へ記録する。なお、妥当であると判定されたキーワードグループが複数存在する場合、その中で最もスコアの高いキーワードグループに対応する検索結果セットを用いてアイテムを特定してもよいし、その複数のキーワードグループに対応する複数の検索結果セット全てを用いてアイテムを特定してもよい。
The
ランキング情報作成部13は、アイテム算出結果記憶部8のデータを用いて算出したアイテムの出現回数に基づき、順位付け(ランキング)を行い、アイテムランキング情報記憶部9へ記録する。なお、ランキング情報作成部13を備えていなくともテキストデータにおける記述の対象となっている情報を精度良く特定することができるが、ランキング情報作成部13を備えることで、テキスト情報処理装置1による解析結果をより有用な形式で出力することができる。
The ranking
なお、テキスト情報処理装置1は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、ネットワークインターフェース等を備える一般的なコンピュータを用いて構成してもよい。すなわち、後に説明するような処理を行うプログラムをコンピュータに実行させることにより、テキスト情報処理装置1として機能するようにしてもよい。
The text
また、テキスト情報処理装置1を複数のコンピュータを用いて構成してもよい。例えば、負荷分散をするために、テキスト情報処理装置1のある処理ブロックに相当するコンピュータを複数台用いて、すなわち、同じ処理ブロックを備える複数台のコンピュータを用いて分散処理を行なうようにしてもよい。また、テキスト情報処理装置1の一部の処理ブロックをあるコンピュータで実施し、他の処理ブロックを別のコンピュータで実施する形態で分散処理を行なってもよい。
Further, the text
テキスト情報処理装置1の具体的な処理について、図2に示すテキストデータの一例と、図3に示すフローチャートと、図4〜9に示すデータ構成図とを用いて詳細に説明する。
Specific processing of the text
以下では、楽曲に関する記事テキスト(テキストデータ)に基づいて、その楽曲を示すアイテム情報を特定し、その特定したアイテム情報に基づくランキング情報を作成する例について説明する。なお、前述のように、アイテムは楽曲に限らず、様々なコンテンツ、物品、サービスであってもよい。 Below, the example which specifies the item information which shows the music based on the article text (text data) regarding a music, and produces the ranking information based on the specified item information is demonstrated. As described above, the items are not limited to music, but may be various contents, articles, and services.
図3に、テキスト情報処理装置1の処理フローを示す。
ステップS1において、テキストデータ収集部10が、テキストデータサーバ2からテキストデータを取得し、その取得したテキストデータをテキストデータ記憶部6に格納する。
FIG. 3 shows a processing flow of the text
In step S <b> 1, the text
具体的には、テキストデータ収集部10は、テキストデータサーバ2に対して、所定のリクエストコマンドを送信することで、ユーザ識別子、記事テキスト(テキストデータ)、及び記事作成更新日などを含むブログデータを受信(取得)する。この受信したデータをテキストデータ記憶部6のテキストデータテーブルに格納する。
この際に、テキストデータ収集部10は、記事テキスト1件につき1つの識別情報(ブログ識別子)を付与する。テキストデータテーブルの格納形式の一例を図5に示す。ブログ識別子、ユーザ識別子、記事テキスト、及び記事作成更新日(例えばアップロードした日時)が関連付けられて格納される。例えば、ユーザが一度のアップロードでテキストデータサーバ2に送信したテキストデータ毎にブログ識別子が付されることとなる。
Specifically, the text
At this time, the text
本実施形態におけるブログ識別子の表記は、記事作成更新日の順に、「BlogID」という文字列+アンダースコア記号(_)+数字の連番とするが、ユーザID+数字の連番としてもよいし、記事取得日時+数字の連番としてもよい。それぞれのブログデータを一意に特定できればよい。なお、テキストデータサーバ2が、ブログ識別子(またはブログ識別子に相当するデータ)を備えており、テキストデータ収集部10が、そのデータを受信(取得)する場合は、テキストデータ収集部10においてブログ識別子を付与する処理を省略し、受信したブログ識別子を利用してもよい。
The notation of the blog identifier in the present embodiment is a character string “BlogID” + underscore symbol (_) + number serial number in order of article creation update date, but may be user ID + number serial number, The article acquisition date and time may be a serial number. It is only necessary to uniquely identify each blog data. When the
ブログデータの読み込みは、必要な記事作成更新日の範囲(期間)をリクエストコマンドで指定して、それに対応するデータを取得してもよい。同様に、リクエストコマンドで必要なユーザ識別子を指定して、そのユーザの記事データのみを取得してもよい。また、リクエストコマンドに文字列に関する検索式を含め、記事テキストに特定の文字列パターンが含まれるブログデータのみを取得してもよい。 The blog data may be read by specifying a required article creation update date range (period) with a request command and acquiring corresponding data. Similarly, a user identifier necessary for the request command may be specified to acquire only the article data of the user. Further, a search expression related to a character string may be included in the request command, and only blog data in which a specific character string pattern is included in the article text may be acquired.
(キーワード集合生成部11の動作)
図3に戻り、ステップS2〜ステップS5にて、キーワード集合生成部11によるキーワード集合生成処理が実行される。
(Operation of the keyword set generation unit 11)
Returning to FIG. 3, in step S <b> 2 to step S <b> 5, keyword set generation processing by the keyword set generation unit 11 is executed.
まず、ステップS2において、キーワード集合生成部11は、テキストデータ記憶部6のテキストデータテーブルからブログ識別子毎のテキストデータを読み出す(取得する)。これ以降の処理においては、各々のテキストデータを対象にして処理を行う。
First, in step S <b> 2, the keyword set generation unit 11 reads (acquires) text data for each blog identifier from the text data table in the text
ステップS3において、不要文字列処理部14は、テキストデータの先頭から末尾までの文字の内、アイテムの特定に役立たない文字列(不要文字列FWと呼ぶ)を、所定の区切り記号Kに置換する。例えば「\\」といった、記事テキストに出現する可能性が少ない記号(複数の記号の組合せも含む)を区切り記号Kにするとよい。不要な文字列は置換せずに削除したり、空白文字(例えば、スペース記号、タブ記号など)に置換してもよいが、区切り記号Kに置換する方が、アイテムの特定に使用する文字列の切り出しに役立つため、好ましい。なお、所定の区切り記号Kは、常に同じ記号を使う必要はなく、テキストデータに応じて、適宜、変更してもよい。例えば、テキストデータの言語種別や文字種別に応じて、区切り記号を変えてもよい。
In step S <b> 3, the unnecessary character
ここで、図2及び図5を用いて、ステップS3の不要文字列処理部14による処理の詳細について説明する。
なお、図2はアイテム情報の特定に使用する記事テキスト(テキストデータ)の一例を示す図である。図2の例では、テキストデータの先頭Sから末尾Eまでの間に、1つ以上の通常文字列Wと、特定記号TKと、不要文字列FWとを含む。ただし、特定記号TKと不要文字列FWは必ずしもあるとは限らない。また、特定記号TKと不要文字列FWは複数存在する場合がある。キーワード抽出部15によって、特定記号TKと不要文字列FW以外の通常文字列Wを抽出することになるが、この抽出方法については後述する。なお、1文字の場合も文字列と称することとする。また、通常文字列Wは、アイテムの特定に役立つ可能性のある文字列であり、例えば、テキストデータの中の特定記号TKと不要文字列FW以外の文字列である。
Here, the details of the processing performed by the unnecessary character
FIG. 2 is a diagram showing an example of article text (text data) used for specifying item information. In the example of FIG. 2, one or more normal character strings W, a specific symbol TK, and an unnecessary character string FW are included between the beginning S and the end E of the text data. However, the specific symbol TK and the unnecessary character string FW are not always present. Further, there may be a plurality of specific symbols TK and unnecessary character strings FW. The
また、図5はテキストデータ記憶部6に格納されるデータ(テキストデータテーブル)の一例を示す図である。図5に示すように、テキストデータテーブルには、記事テキストと、記事テキストに付与されたブログ識別子と、記事テキストをアップロードしたユーザを示すユーザ識別子と、記事テキストをアップロードした更新日を示す記事作成更新日とが関連付けて格納される。図5の記事テキストに示すように、ブログなどのユーザが作成する様々なテキストでは、使われる単語や表現形式が非常に多様になる。
FIG. 5 is a diagram illustrating an example of data (text data table) stored in the text
また、一般的には、アイテムの特定に役立つ文字列と、不要な文字列が混在している。図5に示す例において、「#NowPlaying」は、楽曲や映像コンテンツの再生に係わる記事であることを慣用的に示す文字列である。これは、どのアイテムに関する記事においても、同一の文字列になるため、アイテムの特定に役立たず、不要文字列FWになる。 In general, a character string useful for specifying an item and an unnecessary character string are mixed. In the example shown in FIG. 5, “#NowPlaying” is a character string that conventionally indicates that the article is related to the reproduction of music or video content. Since this is the same character string in articles related to any item, it is not useful for specifying an item and becomes an unnecessary character string FW.
また、例えばTwitterなどの比較的短い記事テキストがアップロードされることが多いサービス(マイクロブログサービス)におけるテキストでは、他サイトへのリンクを示すURL(Uniform Resource Locator)が頻繁に含まれているが、このURLの文字列にはアイテム名等が含まれていないことが多いので、アイテム特定に役立たないため、「http://」などで始まるURL文字列を不要な文字列として扱う。なお、特に短縮URLの文字列にはアイテム名等が含まれていないことが多いので、短縮URLのときのみ不要文字列FWと扱うようにしてもよい。 In addition, in the text in a service (microblog service) where a relatively short article text such as Twitter is often uploaded, a URL (Uniform Resource Locator) indicating a link to another site is frequently included. Since the URL character string often does not include an item name or the like, the URL character string starting with “http: //” or the like is treated as an unnecessary character string because it is not useful for item identification. In particular, since the item name or the like is often not included in the character string of the shortened URL, it may be handled as the unnecessary character string FW only for the shortened URL.
また、アイテム名が含まれていないことが多い、メタタグ(「<」と「>」とで囲まれている文字列)や、音符(♪)などのマークについても不要文字列FWとして扱う。これらは、半角、全角いずれであってもよい。
不要文字列処理部14は、不要文字列FWの一覧表や、不要文字列FWとすべき文字列の条件等を記憶したデータベースを参照して、テキストデータに上記の不要文字列FWが含まれるか否かを判断する。不要文字列処理部14は、所定の区切り記号Kに置き換える。
Also, meta tags (character strings enclosed by “<” and “>”) and marks (♪), which often do not include item names, are treated as unnecessary character strings FW. These may be either half-width or full-width.
The unnecessary character
不要文字列処理部14によって、不要な文字列を空白文字(例えば、スペース記号、タブ記号など)に置き換えるのではなく、ブログ記事等で使用される可能性の少ない所定の記号に置き換えることにより、アイテムの特定に役立つキーワードを精度よく抽出することができる。
例えば、図4(A)に示すような「M1:タイトル,M2:空白,M3:URL,M4:空白,M5:アーティスト(姓),M6:空白,M7:アーティスト(名),M8:#NowPlaying」というパターンの記事テキストがあった場合、図4(B)に示すように、不要文字列FWであるM3:URLやM8:#NowPlayingを空白文字に置換すると、アイテムの特定に役立つキーワードである文字列M5と文字列M7との間に空白が入っていた場合、文字列M5と文字列M7とを1つのキーワードとして扱うか否かの判別は難しくなる。
The unnecessary character
For example, as shown in FIG. 4A, “M1: title, M2: blank, M3: URL, M4: blank, M5: artist (last name), M6: blank, M7: artist (first name), M8: #NowPlaying If there is an article text with a pattern of “”, as shown in FIG. 4B, replacing the unnecessary character string FW M3: URL or M8: #NowPlaying with a blank character is a keyword useful for specifying an item. If there is a space between the character string M5 and the character string M7, it is difficult to determine whether the character string M5 and the character string M7 are handled as one keyword.
つまり、文字列M5:アーティスト(姓)と、文字列M7:アーティスト(名)とを1つのキーワードとして抽出した方がアイテムの特定には有利であるが、不要文字列FWを空白へと置換した場合は、そのような文字列の統合が難しい。
これに対して、図4(C)のように、不要文字列FWであるM3:URLやM8:#NowPlayingを区切り記号K(本図の例では「\\」)に置換すれば、空白を無視してこの区切り記号Kでテキストデータを区切ればよいため、文字列M5と文字列M7とを統合して、1つのキーワードとして扱うことができ、より精度良くアイテムを特定できる。なお、不要文字列FWの文字数に係らず、「\\」に置き換えるようにしているが、不要文字列FWを構成する文字それぞれを「\\」に置き換えてもよい。
In other words, although it is more advantageous to specify the item by extracting the character string M5: artist (last name) and the character string M7: artist (first name) as one keyword, the unnecessary character string FW is replaced with a blank. If so, such string integration is difficult.
On the other hand, as shown in FIG. 4C, if the unnecessary character string FW M3: URL or M8: #NowPlaying is replaced with a delimiter K ("\\" in this example), a blank space Since it is only necessary to disregard the text data with this delimiter K, the character string M5 and the character string M7 can be integrated and handled as one keyword, and the item can be specified with higher accuracy. Note that, regardless of the number of characters in the unnecessary character string FW, “\\” is replaced, but each character constituting the unnecessary character string FW may be replaced with “\\”.
なお、前述の特許文献1記載の除外文字や句読点等についても不要文字列FWとして扱うことができる。特許文献1記載の除外文字とは、例えば、「の」、「が」、「い」及び「く」などである。
Note that the excluded characters, punctuation marks, and the like described in
次に特定記号について説明する。本実施形態で対象としている、楽曲再生中に係わるテキストデータでは、楽曲名とアーティスト名を記述する順序やフォーマットに明確なルールは存在しないが、図2や図5のテキストデータに示すように、ハイフン「-」 又は、スラッシュ「/」をテキストとアーティストを区切る記号として用いていることが多い。本実施形態では、この記号を特定記号TKと称する。テキストデータの中に、特定記号TKが存在する場合もあるし、存在しない場合もある。 Next, specific symbols will be described. There is no clear rule in the order and format for describing the song name and artist name in the text data related to the music playback that is the subject of this embodiment, but as shown in the text data of FIG. 2 and FIG. The hyphen "-" or slash "/" is often used as a symbol to separate text and artist. In the present embodiment, this symbol is referred to as a specific symbol TK. The specific symbol TK may or may not exist in the text data.
不要文字列処理部14によって不要文字列FWを所定の区切り記号Kに置き換える処理を行う場合、この特定記号TKをそのまま残してもよいし、不要文字列FWとして区切り記号Kに置き換えてもよい。特定記号の前後は、楽曲名やアーティスト名などアイテムの特定に役立つ文字列が存在する可能性が比較的高いため、特定記号TKを残して利用することにより、精度よくキーワード抽出が行える場合がある。一方、特定記号TKを区切り記号Kに置換することにより、キーワード抽出処理を簡略化できる。
When the unnecessary character
また、テキストデータにおける記述の対象であるアイテムのアイテム情報が日本語である場合、そのアイテム情報(例えば、音楽コンテンツであれば、日本語のタイトル、日本語のアーティスト名など)に空白文字が含まれる可能性が比較的低いという特徴を利用して、テキストデータが日本語の場合、空白文字を全て区切り記号に置換してもよい。あるいは、日本語の場合、空白文字を削除し、空白文字の前後の文字列をつなげる処理をしてもよい。
以上が、不要文字列処理部14による処理の詳細である。
In addition, if the item information of the item to be described in the text data is in Japanese, the item information (for example, if it is music content, the Japanese title, the Japanese artist name, etc.) contains blank characters If the text data is Japanese, using the feature that the possibility of being generated is relatively low, all white space characters may be replaced with delimiters. Alternatively, in the case of Japanese, processing may be performed in which white space characters are deleted and character strings before and after the white space characters are connected.
The above is the details of the processing by the unnecessary character
図3の説明に戻り、ステップS4では、キーワード抽出部15が、キーワードを抽出する。区切り記号Kを区切りとして、先頭Sから最初の区切り記号Kの一つ前の文字までのテキスト領域と、区切り記号Kに挟まれたテキスト領域と、最後の区切り記号Kの次の文字から文末Eまでのテキスト領域とに分割し、これらのテキスト領域に含まれる文字列をそれぞれキーワードとする。なお、区切り記号Kに挟まれたテキスト領域は複数存在することが多い。 また、特定記号TKを利用する場合は、特定記号TKと区切り記号Kの間、または特定記号TKと先頭Sの間、または特定記号TKと文末Eの間のいずれかのテキスト領域に含まれる文字列を優先的にキーワードとしてもよい。このような処理を行うことにより、キーワード抽出の精度をさらに高めることができる。
また、不要文字列処理部14によって不要文字列FWを空白文字に置換する処理を行っていた場合は、テキストデータを空白文字の位置で区切ってキーワードを抽出する。
Returning to the description of FIG. 3, in step S <b> 4, the
When the unnecessary character
なお、テキスト領域の文字種(漢字、ひらがな、カタカナ、アルファベット、数字等)を判定して、キーワードに空白文字を含めるか否かを決定してもよい。例えば、テキスト領域が主にアルファベットの文字種で構成されている場合は、空白の前後の文字列をつなげる処理を行わずに、空白を含めた前後の文字列を1つのキーワードとして抽出する。例えば、図4(C)に示す例では「M5アーティスト(姓),M6空白,M7アーティスト(名)」を1つのキーワードとして抽出する。
一方、主に、漢字、ひらがな、カタカナで構成されている場合は、空白の前後の文字列をつなげる処理を行った上で、前後の文字列を1つのキーワードとして抽出する。例えば、図4(C)に示す例では「M5アーティスト(姓),M7アーティスト(名)」を1つのキーワードとして抽出する。
Note that the character type (kanji, hiragana, katakana, alphabet, numbers, etc.) of the text area may be determined to determine whether or not to include a blank character in the keyword. For example, when the text area is mainly composed of alphabetic character types, the character string before and after the blank is extracted as one keyword without performing the process of connecting the character strings before and after the blank. For example, in the example shown in FIG. 4C, “M5 artist (last name), M6 blank, M7 artist (name)” is extracted as one keyword.
On the other hand, in the case of mainly composed of kanji, hiragana, and katakana, the process of connecting the character strings before and after the blank is performed, and then the character strings before and after are extracted as one keyword. For example, in the example shown in FIG. 4C, “M5 artist (last name), M7 artist (name)” is extracted as one keyword.
なお、キーワードの先頭Sおよび末尾Eは、空白文字にならないようにすることが好ましい。また、空白文字をキーワードに含めない場合は、特定記号に最も近い空白以外の文字列をキーワードとして抽出することが好ましい。 It should be noted that it is preferable that the beginning S and end E of the keyword are not blank characters. When a blank character is not included in the keyword, it is preferable to extract a character string other than the blank closest to the specific symbol as a keyword.
また、特定の長さの文字列のみをキーワードにしてもよい。例えば、5文字以上15文字以下の文字列をキーワードにする等の基準(条件)を設けて、キーワードを抽出してもよい。このようにする場合、文字種に応じて、キーワードにする文字列の長さの条件を変えてもよい。例えば、アルファベットを使った文字列では、1つの単語の文字列が多くなる傾向があるので、非空白文字と空白文字を合わせた長さが7文字以上20文字以下である場合に、キーワードとするといった条件を設定してもよい。 Further, only a character string having a specific length may be used as a keyword. For example, a keyword may be extracted by providing a criterion (condition) such as using a character string of 5 to 15 characters as a keyword. In this case, the length condition of the character string used as the keyword may be changed according to the character type. For example, in a character string using alphabets, the character string of one word tends to increase. Therefore, when the total length of non-blank characters and blank characters is 7 to 20 characters, the keyword is used. Such a condition may be set.
また、漢字が多く含まれる文字列の場合は、キーワードとする文字列の長さを他の文字種の場合と比較して短めに設定して、2文字以上10文字以下といった条件を設定してもよい。また、特定記号TKを利用する場合は、特定記号に隣接するテキスト領域と、特定記号から離れた位置にあるテキスト領域とで、キーワード抽出の条件を変えてもよい。例えば、特定記号に隣接するテキスト領域では、キーワードとする文字列の長さの条件を緩くし(例えば、3文字以上20文字以下)、特定記号から離れた位置にあるテキスト領域では、文字列の長さの条件を厳しく(例えば、6文字以上12文字以下)する等の処理をしてもよい。 In the case of a character string containing many kanji characters, the length of the character string as a keyword is set shorter than in the case of other character types, and a condition such as 2 to 10 characters is set. Good. When the specific symbol TK is used, the keyword extraction condition may be changed between a text region adjacent to the specific symbol and a text region located away from the specific symbol. For example, in a text area adjacent to a specific symbol, the length condition of the character string as a keyword is relaxed (for example, 3 to 20 characters), and in a text area located away from the specific symbol, the character string Processing such as strict length conditions (for example, 6 to 12 characters) may be performed.
以上のようにして、ステップS4にて、1つの記事テキストから例えばJ個(J≧1)のキーワードが抽出される As described above, for example, J (J ≧ 1) keywords are extracted from one article text in step S4.
次のステップS5では、ステップS4で作成した記事テキスト毎のキーワードを使用して、グルーピング処理部16が、1つの記事テキスト毎に、キーワードグループを作成する。
キーワードの数が1つ(J=1)である場合は、1つのキーワードグループが作成される。キーワードが複数(J≧2)の場合は、基本的に複数のキーワードグループを作成する。1つのキーワードグループに含めるキーワードの数は、1以上の任意の数である。
ここでは、図2に示すテキストデータから抽出された4つのキーワードK1,K2,K3,K4を例に、キーワードグループの作成方法を説明する。
In the next step S5, the
When the number of keywords is one (J = 1), one keyword group is created. When there are a plurality of keywords (J ≧ 2), a plurality of keyword groups are basically created. The number of keywords included in one keyword group is an arbitrary number of 1 or more.
Here, a method for creating a keyword group will be described by taking four keywords K1, K2, K3, and K4 extracted from the text data shown in FIG. 2 as an example.
まず、1つのキーワードグループにつき1つのキーワードを含むように、キーワードグループを作成した場合について説明する。このような場合もキーワードグループと称することとする。
グルーピング処理部16は、キーワードK1,K2,K3,K4それぞれを、それぞれ別のキーワードグループとする。そして、作成したキーワードグループに、それぞれを識別可能なキーワードグループ識別子を付与し、図7に示すような形式で、キーワードグループ記憶部5に格納する。なお、図7は、図2に示すテキストデータに基づいた検索キーワードグループテーブルの例である。
First, the case where a keyword group is created so that one keyword group includes one keyword will be described. Such a case is also referred to as a keyword group.
The
グルーピング処理部16は、キーワードK1,K2,K3,K4に、キーワードグループ識別子Gr001-001、Gr001-002、Gr001-003、Gr001-004をそれぞれ付与する。この例において、キーワードグループ識別子のハイフン「-」より前の部分は、ブログ識別子によって決まる文字列であり、「Gr001」は、「BlogID_001」と対応する。あるいは、キーワードグループ識別子の前半にブログ識別子を直接用いて、「BlogID_001-001」などとしてもよい。また、キーワードグループ識別子のハイフン「-」より後の部分は、数字の連番であるが、作成順の数字の連番としてもよいし、記事取得日時+数字の連番としてもよい。そして、グルーピング処理部16は、キーワードグループ識別子と、ブログ識別子と、キーワードグループに含まれるキーワードとを対応させて格納する。
The
次に、1つのキーワードグループにつき2つのキーワードを含むように、キーワードグループを作成した場合について説明する。 Next, the case where a keyword group is created so that two keywords are included in one keyword group will be described.
グルーピング処理部16は、4つのキーワードから2つのキーワードを選ぶ組合せである、「K1とK2」,「K1とK3」,「K1とK4」,「K2とK3」,「K2とK4」,「K3とK4」の6つのキーワードグループを作成する。
図7に示す例では、グルーピング処理部16は、「K1とK2」,「K1とK3」,「K1とK4」,「K2とK3」,「K2とK4」,「K3とK4」に、キーワードグループ識別子Gr001-005、Gr001-006、Gr001-007、Gr001-008、Gr001-009、Gr001-010をそれぞれ付与する。
1つのキーワードグループに複数のキーワードが存在する場合、各キーワードを空白文字で連結した1つの文字列として格納してもよいし、各キーワードを分離して読み出せる形式で格納してもよい。
The
In the example illustrated in FIG. 7, the
When a plurality of keywords exist in one keyword group, each keyword may be stored as one character string concatenated with a blank character, or each keyword may be stored in a format that can be read out separately.
本実施形態のように、アイテムが楽曲である場合、アイテムの特定には、楽曲名とアーティスト名の2つの文字列が役立つ場合が多い。よって、2つのキーワードを含むキーワードグループであると、記述の対象となっている情報を精度良く特定することができることが多い。ただし、1つのキーワードグループにつき1つのキーワードを含むように、キーワードグループを作成した場合よりもキーワードグループの数が多くなり、処理量は多くなる。 As in the present embodiment, when an item is a song, two character strings of a song name and an artist name are often useful for specifying the item. Therefore, in the case of a keyword group including two keywords, it is often possible to accurately specify information to be described. However, the number of keyword groups is larger and the processing amount is larger than when a keyword group is created so that one keyword group includes one keyword.
なお、グルーピング処理部16によって、第1の数(図7の例では1つ)のキーワードを含むキーワードグループと、第1の数よりも大きい第2の数(図7の例では2つ)のキーワードを含むキーワードグループとの両方を作成すると、後述のように、処理量を抑えながら、記述の対象となっている情報を精度良く特定することができる。なお、図7には示していないが、検索キーワードグループテーブルに、優先度又は優先順位を保持する列を追加し、キーワードグループそれぞれに優先度(優先順位)を付与してもよい。そして、後述のステップS6において、優先度(優先順位)に従って、アイテムデータベース3を検索してもよい。すなわち、まず優先度が最も高いキーワードグループを用いて検索を行った後、次に優先度が2番目に高いキーワードグループを用いて検索を行う等の処理を行ってもよい。
It should be noted that the
優先度(優先順位)を付与する方法としては、それぞれのキーワードが、文字列の長さや文字種などに関するキーワード基準(条件)をどの程度満たしているかの度合いを用いることができる。また、特定記号TKの近くの文字列から抽出されたキーワードの優先度を高くする処理を行ってもよい。 As a method of assigning priority (priority order), it is possible to use the degree to which each keyword satisfies the keyword criteria (conditions) relating to the length of the character string and the character type. In addition, a process for increasing the priority of a keyword extracted from a character string near the specific symbol TK may be performed.
(アイテム特定部12の動作)
図3に戻り、ステップS6にて、アイテム特定部12の検索部17は、キーワードグループ記憶部5に格納されているキーワードグループテーブルから、順次キーワードグループを読み出し、キーワードグループごとに検索式を作成して、アイテムデータベース3に検索リクエストを送信する。
(Operation of the item specifying unit 12)
Returning to FIG. 3, in step S <b> 6, the
本実施形態におけるアイテムデータベース3は、図6に示すような構成のアイテムテーブルを格納している。アイテムデータベース3は、検索リクエストを受信すると、アイテムテーブルを検索し、タイトル列およびアーティスト列のうちの少なくとも一方が、検索リクエストで指定された条件(検索式)に合致した場合に、そのアイテムの情報(タイトル、アーティスト名など)をテキスト情報処理装置1に送信する。なお、テキスト情報処理装置1に送信する情報にアイテム識別子を含めてもよい。
また、ベクトル空間モデル等の検索モデルを用いれば、アイテム情報に検索キーワードが含まれない場合であっても、そのアイテム情報を検索出力とすることも可能である。アイテム特定部12の検索部17は、検索リクエストに含まれる検索式に基づく、アイテム情報のリストを取得する。
The
Further, if a search model such as a vector space model is used, even if a search keyword is not included in the item information, the item information can be used as a search output. The
1つの検索式(1回の検索)に対応して、アイテムデータベース3から取得できるデータ(アイテム情報のリスト)を、検索結果セット(検索結果リスト)と称する。検索式に合致するアイテムが存在する場合、検索結果セットには、1つ又は複数のアイテム情報が含まれている。なお、検索により取得されたアイテム情報を単に「検索結果」とも称する。
また、本実施形態におけるアイテムデータベース3は、検索式の中でAND又はOR条件が明示されずに、複数のキーワードが指定された場合、複数のキーワードがAND条件で結合されたものとして解釈する。また、アイテムデータベース3は、検索式に合致するアイテムが複数存在する場合、優先順位を付けて検索結果を送信してもよい。例えば、優先順位の最も高いアイテムを1番目の検索結果とし、優先順位が2番目に高いアイテムを2番目の検索結果とし、以下同様に検索結果の順番を決めてもよい。
Data (item information list) that can be acquired from the
Further, the
ここで、優先順位は、検索式とアイテム情報とが合致する度合いを用いて算出されてもよいし、アイテムの人気度を用いて算出されてもよい。例えば、検索結果として出力する回数をアイテムごとにカウントし、この回数を人気度とし、人気度の高いアイテムの優先順位を高くする処理を行ってもよい。また、外部から取得可能な、アイテムの利用回数、アイテムの売り上げ金額などの情報を用いて人気度を算出してもよい。また更に、テキスト情報処理装置1が、アイテムデータベース3に対して、後述するランキング情報に基づき、アイテムごとの人気度を算出し、この情報を定期的にアイテムデータベース3に提供し、アイテムデータベース3が優先順位の決定に用いてもよい。
このように、検索部17とアイテムデータベース3とが協働して検索処理を行うようにしているが、どちらかが単独で行ってもよい。
Here, the priority order may be calculated using the degree of matching between the search expression and the item information, or may be calculated using the item popularity. For example, the number of times to be output as a search result may be counted for each item, and the number of times may be set as a popularity level, and processing for increasing the priority of items having a high popularity level may be performed. Further, the popularity may be calculated using information such as the number of times the item is used and the sales amount of the item, which can be acquired from the outside. Furthermore, the text
Thus, although the
検索部17は、1回の検索につき、1つのキーワードグループを用いる。また、キーワードグループが複数のキーワードを含む場合は、それらを使ってAND条件となるように、検索式を作成する。1つの検索式に使われるキーワードの集合を検索キーと称する。本実施形態においては、キーワードグループが検索キーに相当する。また、検索式にAND又はOR条件が含まれず、検索式が1つ以上のキーワードのみで構成されている場合は、検索式と検索キーは等価であるといえる。
例えば、1つのキーワードのみが含まれるキーワードグループで検索を行った場合は、タイトルおよびアーティストの内の少なくとも一方にそのキーワードが含まれるアイテム情報(ここでは、タイトルとアーティスト名)が出力される。
The
For example, when a search is performed with a keyword group including only one keyword, item information (here, title and artist name) including the keyword in at least one of the title and artist is output.
図7に示すように、キーワードグループ識別子Gr001-001のキーワード「歌」のみのキーワードグループで検索した場合、タイトルやアーティスト名に「歌」が含まれる検索結果が出力される。例えば、「愛の歌/Z山 T朗」,「卒業の歌/Yバンド」,「歌ソング/C&A」,「春歌/Aバンド」,「夏歌/Aバンド」などを含む、タイトルとアーティスト名のリストが、検索結果として出力される。 As shown in FIG. 7, when a search is made with a keyword group having only the keyword “song” with the keyword group identifier Gr001-001, a search result including “song” in the title and artist name is output. For example, titles including “Love Song / Z Yama Toro”, “Graduation Song / Y Band”, “Song Song / C & A”, “Spring Song / A Band”, “Summer Song / A Band”, etc. A list of artist names is output as a search result.
また、(K1,K2)の2つのキーワードがキーワードグループに含まれる場合、(K1 AND K2)といった検索式を作成する。つまり、タイトルかアーティストの内の少なくともどちらかにキーワードK1が含まれ、かつ、タイトルかアーティストの内の少なくともどちらかにキーワードK2が含まれるアイテムを示す情報が出力される。
例えば、図7に示すように、キーワードグループ識別子Gr001-006の「歌」及び「Aバンド」が含まれるキーワードグループで検索した場合、タイトルやアーティスト名に「歌」が含まれ、かつ、タイトルやアーティスト名に「Aバンド」が含まれる検索結果が出力される。例えば、「春歌/Aバンド」及び「夏歌/Aバンド」という、タイトルとアーティスト名のリストが出力される。
When two keywords (K1, K2) are included in the keyword group, a search expression such as (K1 AND K2) is created. That is, information indicating an item in which the keyword K1 is included in at least one of the title and the artist and the keyword K2 is included in at least one of the title and the artist is output.
For example, as shown in FIG. 7, when searching for a keyword group including “song” and “A band” of the keyword group identifier Gr001-006, “song” is included in the title and artist name, A search result including “A band” in the artist name is output. For example, a list of titles and artist names “Haruka / A band” and “Natsuka / A band” is output.
次のステップS7において、アイテム特定部12は、検索結果セットに含まれる各アイテム情報の正規化を行う。この正規化は、アイテムデータベース3が、実質的に同じアイテムを別々の検索結果として返すことがあるため、これに対応する処理として行う。アイテムが楽曲である場合、実質的に同じ楽曲であっても、複数パターンの曲名表記が使われている場合がある。
In the next step S7, the
例えば、アイテムデータベース3が1つの楽曲「タイトルA/アーティストB」に関して、「タイトルA(version C)/アーティストB]、「タイトルA/アーティストB(featuring X)」、「タイトルA/アーティストB with X」などの複数の検索結果を返す場合がある。特に、多数のユーザが作成、提供した楽曲情報をもとにアイテムデータテーブルが作成されている場合には、このような現象が起こりやすい。アイテム情報の正規化を行うことにより、上記のような楽曲表記のバリエーションを1つにまとめることが可能になる。具体的には、検索結果セットに含まれる各アイテム情報(タイトルおよびアーティスト名)の文字列に対して、所定の文字列を消去したり、文字種の変換を行って正規化文字列を作成したりする。例えば、括弧で囲われた文字列(「(」と「)」とで囲われた文字列)を削除してもよい。
For example, in the
また、「featuring」、「with」などアーティスト名を補足するのに多用される文字列をあらかじめ登録しておき、検索結果のアーティスト名からその文字列以降を消去してもよい。また、半角カタカナを全角カタカナに、全角アルファベットを半角アルファベットに、全角数字を半角数字に等の文字種の変換処理を行ってもよい。正規化処理は必ずしも行わなくてもよいが、このような検索結果の正規化処理を行うことで、テキストデータとアイテムとをさらに精度良く対応付けることができる。 Alternatively, a character string frequently used to supplement the artist name such as “featuring” or “with” may be registered in advance, and the character string and subsequent characters may be deleted from the artist name as a search result. Also, conversion processing of character types such as half-width katakana to full-width katakana, full-width alphabet to half-width alphabet, and full-width number to half-width number may be performed. The normalization process does not necessarily have to be performed, but by performing such a search result normalization process, the text data and the item can be associated with each other more accurately.
次にステップS8では、アイテム特定部12は、ステップS7で作成された正規化されたアイテム情報を用いて、検索結果セットに含まれるアイテム情報間それぞれの類似度計算を行い、算出結果の平均値をスコアとして算出する。そして、算出したスコアをキーワードグループ識別子に対応させて、図8に示す検索結果スコアテーブルのスコア列に格納する。なお、検索した結果、該当するアイテムが見つからなかった場合(検索結果セットが空集合の場合)、そのキーワードグループについてのスコアは格納されない。
Next, in step S8, the
次に、スコア算出方法について説明する。例えば、検索結果セットとして、(1)「春歌/Aバンド」、(2)「Aソング/Aバンド」、及び(3)「夏歌/Aバンド」の3つのアイテム情報が出力された場合は、(1)「春歌/Aバンド」と(2)「Aソング/Aバンド」との類似度、(1)「春歌/Aバンド」と(3)「夏歌/Aバンド」との類似度、(2)「Aソング/Aバンド」と(3)「夏歌/Aバンド」との類似度、の3つの類似度を算出する。そしてこの3つの類似度の平均値をスコアとして算出してもよい。このように、検索結果セットに含まれるアイテム情報の全ての組合せについて類似度を算出すると、スコアを精度よく算出することができるが、処理量は多くなる。 Next, a score calculation method will be described. For example, when three items of information of (1) “Spring Song / A Band”, (2) “A Song / A Band”, and (3) “Summer Song / A Band” are output as a search result set. (1) “Haruka / A band” and (2) “Song / A band” similarity, (1) “Haruka / A band” and (3) “Natsuka / A band” The similarity of (2) “A song / A band” and (3) “Natsuka / A band” is calculated. Then, an average value of these three similarities may be calculated as a score. Thus, if the similarity is calculated for all combinations of item information included in the search result set, the score can be calculated with high accuracy, but the processing amount increases.
また、検索結果セットの中のアイテムから1つの基準アイテム(基準検索結果)を選び、その基準アイテムと、検索結果セットの中の他のアイテムとの類似度を算出し、それらの平均値をスコアとして算出してもよい。例えば、(1)「春歌/Aバンド」を基準アイテムとし、(1)「春歌/Aバンド」と(2)「Aソング/Aバンド」との類似度、(1)「春歌/Aバンド」と(3)「夏歌/Aバンド」との類似度、の2つの類似度を算出し、それらの平均値をスコアとしてもよい。このようにすると、検索結果セットに含まれるアイテム情報の全ての組合せについて類似度を算出する場合と比べ、スコアの精度は低下するが、処理量は少ない。検索結果セットに含まれるアイテム情報が多い場合には、基準アイテムを使う方法が望ましい。 Also, select one reference item (reference search result) from the items in the search result set, calculate the similarity between the reference item and other items in the search result set, and score the average value of them May be calculated as For example, (1) “Haruka / A band” is a reference item, (1) “Haruka / A band” and (2) “A song / A band” similarity, (1) “Haruka / A band” Two similarities of “A band” and (3) “Natsuka / A band” similarity may be calculated, and the average value thereof may be used as a score. In this way, compared to the case where the similarity is calculated for all combinations of item information included in the search result set, the accuracy of the score is reduced, but the processing amount is small. When there is a lot of item information included in the search result set, a method using a reference item is desirable.
検索結果セットに2つのアイテム情報しか含まれない場合は、その2つのアイテム情報間の類似度をそのままスコアとして用いればよい。また、検索結果セットに1つのアイテム情報しか含まれない場合には、類似度およびスコアの計算処理は行わず、その検索結果セットのアイテム情報をブログ識別子に対応付けるようにしてもよい。 When only two item information items are included in the search result set, the similarity between the two item information items may be used as a score as it is. If only one item information is included in the search result set, the similarity and score calculation processing may not be performed, and the item information in the search result set may be associated with the blog identifier.
類似度計算には種々の方法を用いることができる。例えば、正規化された検索結果N件(N≧2)を対象に、形態素解析処理を行い、単語を抽出する。この際に、名詞や形容詞など特定の品詞を抽出対象としたり、助詞や助動詞を除外する等の処理を行ってもよい。合計でM種類の単語(1〜M語)が抽出できた場合、検索結果(アイテム情報)を行列の行に、単語を列に対応させて、ある検索結果にある単語が出現する頻度(回数)を行列要素とするN×M生起行列を作成する。あるいは、行列要素を、ある検索結果にある単語が出現した場合に「1」、出現しない場合に「0」としてもよい。
以下では、生起行列の要素をdijと表わす(i=1〜N、j=1〜M)。iは行列のi番目の行、jは行列のj番目の列を示す。
Various methods can be used for the similarity calculation. For example, morphological analysis processing is performed on N normalized search results (N ≧ 2), and words are extracted. At this time, processing such as extracting a specific part of speech such as a noun or an adjective or excluding a particle or an auxiliary verb may be performed. When a total of M types of words (1 to M words) can be extracted, the search results (item information) correspond to the rows of the matrix and the words correspond to the columns. ) Is created as a matrix element. Alternatively, the matrix element may be “1” when a certain word appears in a certain search result and “0” when it does not appear.
In the following, the elements of the occurrence matrix are represented as dij (i = 1 to N, j = 1 to M). i represents the i-th row of the matrix, and j represents the j-th column of the matrix.
ここで、N件全ての組み合わせについて類似度を算出してもよいが、処理を簡便化するために、生起行列のN行の中から1つの行を基準検索結果(基準アイテム)として選び、基準検索結果と他の検索結果(他の行)との類似度を算出する。基準検索結果は、乱数を使ってランダムに選択してもよいが、本実施形態では1行目の検索結果(アイテムデータベース3が最初に出力したアイテム情報)を基準検索結果とする。 Here, the similarity may be calculated for all N combinations, but in order to simplify the process, one of the N rows of the occurrence matrix is selected as the reference search result (reference item), and the reference The similarity between the search result and other search results (other rows) is calculated. The reference search result may be selected randomly using a random number, but in the present embodiment, the search result on the first line (item information output first by the item database 3) is used as the reference search result.
本実施形態において、類似度の計算には、下記の数1に示す式に示すとおりコサイン類似度を使用する。基準検索結果をk番目の行とすると、基準検索結果とi番目の検索結果(i番目の行)との類似度Sikは、数1に示す式で求められる。ただし、i=1〜N、i≠k、j=1〜Mである。
In the present embodiment, the cosine similarity is used for calculating the similarity as shown in the following equation (1). If the reference search result is the k-th row, the similarity Sik between the reference search result and the i-th search result (i-th row) is obtained by the equation shown in
本実施形態においては、コサイン類似度を使用するが、類似度算出の式はこれに限らない。例えば、公知のJaccard係数、Simpson係数、ピアソン積率相関係数などを用いて類似度を算出してもよい。また、形態素解析を用いて単語を抽出するのではなく、検索結果同士を文字単位で比較して類似度を算出してもよい。例えば、2つの正規化された検索結果に対して、それぞれ先頭からp番目の文字が一致するか否かを判定し、それを用いて類似度を算出してもよい。また、レーベンシュタイン距離等、一般的に文字列の類似度として用いられている尺度を算出してもよい。 In the present embodiment, the cosine similarity is used, but the similarity calculation formula is not limited to this. For example, the similarity may be calculated using a known Jaccard coefficient, Simpson coefficient, Pearson product moment correlation coefficient, or the like. Further, instead of extracting words using morphological analysis, the similarity may be calculated by comparing the search results in units of characters. For example, it may be determined whether or not the p-th character from the top matches each of two normalized search results, and the similarity may be calculated using that. Also, a scale generally used as the similarity of character strings, such as Levenshtein distance, may be calculated.
そして、1つの検索結果セットにつき得られる類似度の平均値を算出して、スコアとする。例えば、N件(N≧3)の検索結果が得られた場合、基準検索結果と、他の(N−1)件の検索結果との間の類似度が(N−1)個算出される。この(N−1)個の類似度の平均値を算出すればよい。なお、ここでは、類似度の平均値を算出してスコアとするが、類似度の最小値、平均値、中央値、最頻値、四分位値などを算出してスコアとしてもよい。このスコアが大きければ大きい程、複数の検索結果が類似していることを意味する。また、1つの検索結果セットから算出された複数の類似度の内、所定値以上であった類似度の個数をカウントし、その個数を、類似度計算の対象とした検索結果セットに含まれるアイテム数Nや、その検索結果セットから算出された類似度の個数で割った値をスコアとして用いてもよい。 Then, an average value of similarities obtained for one search result set is calculated and used as a score. For example, when N search results (N ≧ 3) are obtained, (N−1) similarities between the reference search result and the other (N−1) search results are calculated. . What is necessary is just to calculate the average value of these (N-1) similarities. Here, the average value of the similarity is calculated as the score, but the minimum value, the average value, the median value, the mode value, the quartile value, and the like of the similarity may be calculated and used as the score. A larger score means that a plurality of search results are similar. In addition, among a plurality of similarities calculated from one search result set, the number of similarities that are equal to or greater than a predetermined value is counted, and the number is included in the search result set for which the similarity is calculated. The number N or a value divided by the number of similarities calculated from the search result set may be used as the score.
ブログ記事で使われる一般的な単語と、楽曲のタイトルで使われる単語は、重なっていることが多く、事前にルールを作っておいて、これらを区別することが難しい。このため、抽出されたキーワードには、アイテムとは関係ない一般的な単語が入る場合もある。 Common words used in blog posts and words used in song titles often overlap, making it difficult to distinguish between them by creating rules in advance. For this reason, a general word unrelated to the item may be included in the extracted keyword.
キーワードが一般的な単語である場合、それを使ってアイテムデータベース3を検索すると、1つの楽曲ではなく、複数の楽曲に関する検索結果が返ってくる可能性が高い。例えば、「愛」といった一般的な単語を楽曲名に含む楽曲は多いため、「愛」を検索キーにしてアイテムデータベース3を検索すると、複数の楽曲に関する検索結果が得られる可能性が非常に高い。このような場合、多様な検索結果が得られ、検索結果どうしの類似度は低くなり、スコアも低い値となる。
If the keyword is a general word and the
一方、キーワードが、ある1つの楽曲に特有の語句であったり、一般的な使用頻度が低い語句であったりする場合、検索結果が複数であっても、実質的には1つの楽曲に関することが多い。この場合は、検索結果どうしの類似度が高くなり、スコアも高い値となる。従って、上述した方法でスコアを算出することにより、検索に用いたキーワード(キーワードグループ)によって、1つのアイテムが特定できたか否かを的確に判定することができる。 On the other hand, when a keyword is a phrase unique to a certain piece of music or a phrase that is not frequently used, even if there are a plurality of search results, it is substantially related to one piece of music. Many. In this case, the similarity between the search results is high, and the score is also high. Therefore, by calculating the score by the method described above, it is possible to accurately determine whether one item has been identified by the keyword (keyword group) used for the search.
次のステップS9にて、アイテム特定部12の妥当性判定部19は、スコアが所定の閾値θより大きいかどうかを判定する。θの値は、あらかじめ試験的に収集した検索結果を用いて設定してもよいし、状況に応じて設定値を変更してもよい。妥当性判定部19は、スコアがθ以上であれば、アイテム特定に結び付くキーワードグループであると判断してステップS10に移って真を返すと共に、検索結果セットの中からブログ記事と対応させるアイテムの候補である候補アイテムを選択し、図8に示す検索結果スコアテーブルの「候補アイテムのアイテム識別子」列に、候補アイテムのアイテム識別子を登録する。スコアがθより小さければ、アイテム特定に結び付くキーワードグループではないと判断してステップS11に移って偽を返す。
In the next step S9, the
ここで、図8は、キーワードグループ識別子Gr001-001 〜Gr001-010のキーワードグループのスコアを示す検索結果スコアテーブルを示すものである。検索結果スコアテーブルはスコア記憶部7に格納される。
閾値θを「0.4」とすると、図8の例では、3つのキーワードグループGr001-006、 Gr001-008、Gr001-010が閾値θ以上のスコアとなっている。スコアが閾値以上となったキーワードグループについては、検索結果セットの内の一のアイテム識別子が関連付けられる。なお、キーワードグループに含まれるキーワード数に応じて閾値θを変更してもよい。この場合、キーワード数が多いほど大きな閾値(真となりにくい閾値)を用いるとよい。検索結果セットの中から一のアイテム(候補アイテム)を選択する方法としては、以下の方法を用いることができる。
Here, FIG. 8 shows a search result score table indicating the scores of the keyword groups having the keyword group identifiers Gr001-001 to Gr001-010. The search result score table is stored in the
Assuming that the threshold θ is “0.4”, in the example of FIG. 8, the three keyword groups Gr001-006, Gr001-008, and Gr001-010 have scores equal to or higher than the threshold θ. A keyword group whose score is equal to or greater than a threshold is associated with one item identifier in the search result set. Note that the threshold θ may be changed according to the number of keywords included in the keyword group. In this case, a larger threshold value (threshold value that is less likely to be true) may be used as the number of keywords increases. As a method for selecting one item (candidate item) from the search result set, the following method can be used.
第1の方法は、アイテムデータベース3が検索結果として出力する最初(1番目)のアイテム(検索部17が最初に取得したアイテム)を選択する方法である。この方法は、アイテムデータベース3が、優先順位付きの検索結果を出力する場合に用いることができる。テキスト情報処理装置1は、取得した検索結果の順番の情報を記憶しておく。
The first method is a method of selecting the first (first) item (the item acquired first by the search unit 17) that the
第2の方法は、キーワードグループ(検索キー)と、それに基づく検索結果それぞれとの類似度を算出して、類似度が最も高かった検索結果(アイテム)を選択する方法である。例えば、「Aソング」と「Aバンド」が含まれるキーワードグループGr001-010については、キーワード「Aソング」及び「Aバンド」と、各検索結果である「Aソング/Aバンド」,「Aソングsingle ver./Aバンド」,「Aソング/AバンドwithT」それぞれとの類似度を算出する。ここでの類似度は、2つの文字列を1文字単位で比較するタイプの方法を用いて算出するとよい。この例の場合、検索結果「Aソング/Aバンド」が最も類似度が高くなるため、妥当性判定部19は、この「Aソング/Aバンド」を候補アイテムとして決定し、図6に示すアイテムテーブルを参照しながら、「Aソング/Aバンド」のアイテム識別子であるA001を特定し、検索結果スコアテーブルのキーワードグループ(Gr001-010)に対応する候補アイテム識別子として登録する。なお、類似度の代わりに、キーワードグループと検索結果それぞれとの差(違いの度合い)や距離を算出してもよい。
The second method is a method of calculating a similarity between a keyword group (search key) and each search result based on the keyword group and selecting a search result (item) having the highest similarity. For example, for the keyword group Gr001-010 including “A song” and “A band”, the keywords “A song” and “A band”, and “A song / A band” and “A song” as search results. Calculate the similarity to “single ver./A band” and “A song / A band withT”. The similarity here may be calculated using a method of a type in which two character strings are compared in units of one character. In this example, since the search result “A song / A band” has the highest similarity, the
第3の方法は、ステップS7で正規化されたアイテム情報と、正規化する前のアイテム情報との差が最も小さいアイテムを選択する方法である。例えば、アイテムデータベース3が、(1)「Aソング/Aバンド」、(2)「Aソングsingle ver./Aバンド」、(3)「Aソング/AバンドwithT」の3つのアイテムを出力し、これらを正規化した結果が全て、「Aソング/Aバンド」となった場合、正規化の前後で文字列が変わらない(1)「Aソング/Aバンド」を選択する。
The third method is a method of selecting an item having the smallest difference between the item information normalized in step S7 and the item information before normalization. For example, the
第4の方法は、後述するランキング情報を利用し、過去に作成されたランキング情報の順位が最も高いアイテムを選択する方法である。過去にブログ記事に多く登場したアイテムほど、新たなブログ記事にも登場する可能性が高いためである。 The fourth method is a method of selecting an item having the highest ranking information created in the past using ranking information described later. This is because the more items that have appeared in blog articles in the past, the more likely they will appear in new blog articles.
次のステップS12にて、妥当性判定部19は、全てのキーワードグループについて妥当性の判定を行ったか判断し、まだ妥当性を行っていないキーワードグループがあれば、ステップS9に戻り、次のキーワードグループのスコアと閾値とを比較する。ステップS12にて、全てのキーワードグループについて妥当性の判定が終わっていた場合は、次のステップS13に移る。なお、このステップS12において、全てのキーワードグループについて妥当性判定を行ったかを判定するのではなく、妥当性判定の結果が真となったキーワードグループが1つ存在した時点で、次のステップS13に移ってもよい。こうすることで計算負荷が低減される。
In the next step S12, the
次のステップS13において、アイテム特定部12の妥当性判定部19は、妥当性判定の結果が真であったアイテム識別子とブログ識別子とを、検索結果スコアテーブルに基づき、図9に示すようなアイテム算出結果記憶部8が備えるアイテム算出結果テーブルに登録する。このように、妥当性判定部19は、妥当性判定の結果が真であったアイテム識別子をそのブログ識別子に対応するアイテム情報であると特定している。
In the next step S13, the
なお、図8に示す例においては、閾値以上のスコアとなっているキーワードグループが複数(3つ)存在し、それぞれアイテム識別子(候補アイテム識別子)が関連付けられているが、その中で最もスコアの高いキーワードグループのアイテム識別子を採用して、アイテム算出結果テーブルに登録してもよいし、閾値以上のスコアとなっているキーワードグループ全てのアイテム識別子を登録してもよい。これは、1つのテキストデータにおいて、複数のアイテムが記述されることもあるためである。ただし、アイテムを特定する精度を重視する場合は、最もスコアの高いキーワードグループのアイテム識別子のみを採用した方がよい。なお、スコアの高い順に複数のキーワードグループを選択し、それらに対応する複数のアイテム識別子をアイテム算出結果テーブルに登録してもよい。また、ステップS8で算出されたスコアが閾値未満である場合でも検索結果スコアテーブルに候補アイテムを登録するようにした上で、最もスコアの高いキーワードグループに対応する候補アイテムのアイテム識別子をアイテム算出結果テーブルに登録してもよい。 In the example shown in FIG. 8, there are a plurality (three) of keyword groups having a score equal to or higher than the threshold value, and item identifiers (candidate item identifiers) are associated with each of them. An item identifier of a high keyword group may be adopted and registered in the item calculation result table, or item identifiers of all keyword groups having a score equal to or higher than a threshold value may be registered. This is because a plurality of items may be described in one text data. However, when emphasizing the accuracy of specifying an item, it is better to adopt only the item identifier of the keyword group with the highest score. A plurality of keyword groups may be selected in descending order of score, and a plurality of item identifiers corresponding to them may be registered in the item calculation result table. In addition, even when the score calculated in step S8 is less than the threshold, the candidate item is registered in the search result score table, and the item identifier of the candidate item corresponding to the keyword group with the highest score is obtained as the item calculation result. You may register in the table.
最もスコアの高いキーワードグループのアイテム識別子を採用する場合、図7及び図8に示す例では、ブログ識別子BlogID_001とアイテム識別子A001とがアイテム算出結果テーブルへ出力される。
以上のようにして、ブログ識別子に対して、記述の対象となっているアイテム識別子を精度良く対応させることができる。なお、上述の説明では、1つの検索結果セットの中から1つの候補アイテムを選択して、検索結果スコアテーブルに登録しているが、1つの検索セットから複数の候補アイテムを選択して登録するようにしてもよい。
When the item identifier of the keyword group with the highest score is adopted, the blog identifier BlogID_001 and the item identifier A001 are output to the item calculation result table in the example shown in FIGS.
As described above, an item identifier that is a description target can be associated with a blog identifier with high accuracy. In the above description, one candidate item is selected from one search result set and registered in the search result score table. However, a plurality of candidate items are selected and registered from one search set. You may do it.
以上のようにして特定したアイテムを示す情報を、対応するブログ記事そのものやブログ記事を示す情報(例えばブログ識別子やブログの題名)とともに表示部に表示させる表示制御部21を備えるようにしてもよい。例えば、アイテム名とともにブログ記事を表示することで、そのアイテムに関する口コミ情報であることがすぐに識別できる。なお、表示部はテキスト情報処理装置1が有する表示部(図示せず)でもよいし、端末装置4が有する表示部(図示せず)でもよい。
また、アイテム名と、そのアイテムに関連付けられた複数のブログ記事とを同じ画面で表示するようにすれば、そのアイテムに関する複数の口コミ情報などが一度に見ることができるため有用である。
You may make it provide the
Also, displaying the item name and a plurality of blog articles associated with the item on the same screen is useful because a plurality of word-of-mouth information related to the item can be viewed at a time.
(ランキング情報作成部13の動作)
図3に戻り、ランキング情報作成部13によって行われる処理について説明する。
ステップS14にて、ランキング情報作成部13は、図9に示すアイテム算出結果テーブルと、図5に示すテキストデータテーブルと、図6に示すアイテムテーブルとを参照して、アイテム算出結果テーブルに登録されている(ブログ識別子、アイテム識別子)の組み合わせに対応する、アイテム情報(タイトル、アーティストなど)、ユーザ識別子、及び記事作成更新日を抽出する。
(Operation of the ranking information creation unit 13)
Returning to FIG. 3, processing performed by the ranking
In step S14, the ranking
ステップS15にて、ランキング情報作成部13は、アイテム算出結果テーブルにおけるアイテム識別子の出現回数をカウントし、出現回数が多い順(降順)にソートした(アイテム識別子、出現回数)の組み合わせリスト(第1のリスト)を作成し、アイテムランキング情報記憶部9に記憶する。なお、ある1人のユーザがあるアイテムについてのブログ記事を所定回数以上書いていた場合、そのアイテムの出現回数を所定の規則に従って、元の出現回数より少なくするといった処理を追加してもよい。
In step S15, the ranking
ステップS16において、ランキング情報作成部13は、ステップS14で作成したデータを使用し、アイテム算出結果テーブルに登録されているアイテム識別子それぞれについて、ユーザ識別子の種類数(異なるユーザ識別子の出現回数)をカウントする。すなわち、あるアイテムが何人のユーザのブログに記述されているかをカウントする。そして、出現回数が多い順(降順)にソートした(アイテム識別子、ユーザ識別子の種類数)の組み合わせリスト(第2のリスト)を作成し、アイテムランキング情報記憶部9に記憶する。
In step S16, the ranking
ステップS17において、ランキング情報作成部13は、ステップS15で作成した第1のリストと、ステップS16で作成した第2のリストとを用いて、図10に示す形式のランキングテーブルを作成する。ランキングテーブルは、ランキング情報記憶部9に格納される。ランキングテーブルは、順位と、アイテム識別子と、アイテム識別子の出現回数とを対応させたテーブルであり、種々の方法で作成することができる。
In step S17, the ranking
具体的には、まず第1のリストに従って、アイテムの出現回数の多い順にアイテムに順位を付ける。次に、アイテムの出現回数が同じアイテムが存在する場合は、それらのアイテムに関して、第2のリストに従って、ユーザ識別子の種類数が多い順に順位を付ける。すなわち、アイテム識別子の出現回数を第1優先項目、ユーザ識別子の種類数を第2優先項目として、それぞれ多い順にアイテムをソートして、順位を付与すればよい。また、ユーザ識別子の種類数を第1優先項目、アイテム識別子の出現回数を第2優先項目としてソートして、順位を付与してもよい。 Specifically, according to the first list, items are ranked in descending order of the number of appearances of items. Next, when there are items having the same number of appearances of items, the items are ranked in descending order according to the second list according to the second list. In other words, the items may be sorted in order of increasing number of appearances of item identifiers as the first priority item and the number of types of user identifiers as the second priority item, and the ranks may be given. The number of types of user identifiers may be sorted as the first priority item, and the number of appearances of the item identifier may be sorted as the second priority item, and the ranking may be given.
なお、上述のランキングテーブル作成方法は、あくまでも一例であり、種々の方法でランキングを作成することができる。例えば、リスト1の出現回数とリスト2のユーザ識別子の種類数とに基づいて、総合点数を算出し、総合点数の多い順に順位を付与してもよい。この総合点数をランキングテーブルに登録してもよい。また、特定したアイテムに係る種々の数値に基づいて統計的な処理を行うようにしてもよい。例えば、複数の集計期間を設定し、それぞれの集計期間でのアイテム出現回数を比較して、出現回数の増減率等を算出し、増加率の高いアイテムに対して、「赤丸急上昇」などの情報を付与するようにしてもよい。
The ranking table creation method described above is merely an example, and rankings can be created by various methods. For example, the total score may be calculated based on the number of appearances of
また、表示制御部21は、以上のようにして作成したランキング等を表示部に表示させてもよい。また、ランキングとともに、そのランキングに含まれるアイテムと関連付けられたブログ記事や、ブログ記事を書いたユーザの情報を表示させてもよい。なお、表示部については、テキスト情報処理装置1が有する表示部(図示せず)でもよいし、端末装置4が有する表示部(図示せず)でもよい。
The
以上説明したように、本実施形態のテキスト情報処理装置により、ブログ等のテキストデータから商品またはサービスであるアイテムを精度良く抽出することができる。 As described above, the text information processing apparatus according to the present embodiment can accurately extract items that are products or services from text data such as a blog.
また、本実施形態のテキスト情報処理装置によれば、抽出したアイテム情報について統計的に処理することができる。 Moreover, according to the text information processing apparatus of this embodiment, the extracted item information can be statistically processed.
例えば、所定期間(例えば、1週間、1日、1時間など)内においてマイクロブログサービス等で記述の対象となっている曲を抽出し、曲ごとの記事数やユーザ数をカウントし、そのカウント数に従って、曲の順位付けを行うことで、市場動向の統計データとしてマーケティングに活かすことができる。また、ユーザへそれらの情報を提示することで、ユーザの購買意欲を高めたりすることが期待できる。 For example, within a predetermined period (for example, one week, one day, one hour, etc.), a song that is the object of description by a microblog service or the like is extracted, and the number of articles and the number of users for each song are counted, By ranking the songs according to the numbers, it can be used for marketing as statistical data of market trends. In addition, by presenting such information to the user, it can be expected to increase the user's willingness to purchase.
<第2実施形態>
次に図11及び図12のフローチャートを用いて、テキスト情報処理装置1における処理の他の実施形態について説明する。
第1実施形態においては、第1の数のキーワードを含むキーワードグループによる検索と、第1の数よりも大きい第2の数のキーワードを含むキーワードグループによる検索の両方を行うか、またはどちらか一方のみを行っていたが、本実施形態においては、アイテムを特定できたか否かに応じて、キーワードグループに含まれるキーワード数を多くしていくことで、処理量を抑えながら、記述の対象となっている情報を精度良く特定することができるように構成したものである。
Second Embodiment
Next, another embodiment of the processing in the text
In the first embodiment, either a search by a keyword group including a first number of keywords and a search by a keyword group including a second number of keywords greater than the first number are performed, or either However, in this embodiment, the number of keywords included in the keyword group is increased according to whether or not the item has been identified. The information can be specified with high accuracy.
なお、図11のフローチャートにおけるステップS5a,ステップS12a,ステップS12b、及び、図12のフローチャートにおけるステップS5b,ステップS12c,ステップS12d以外は第1実施形態と基本的に同様な処理である。よって、第1実施形態と同様な処理については説明を省略する。 Note that the processing is basically the same as that of the first embodiment except for step S5a, step S12a, step S12b in the flowchart of FIG. 11 and step S5b, step S12c, and step S12d in the flowchart of FIG. Therefore, description of the same processing as in the first embodiment is omitted.
本実施形態において、図11のステップS5aにて、グルーピング処理部16は、1つの記事テキスト毎に、第1の数のキーワードを含むキーワードグループを作成する。例えば、図7のキーワードグループ識別子Gr001-001 〜Gr001-004のキーワードグループのように、グルーピング処理部16は、1つのキーワードを含むキーワードグループを作成する。
In the present embodiment, in step S5a of FIG. 11, the
ステップS6〜S11については、第1実施形態と同様の方法で、検索結果の妥当性を判断する。
次のステップS12aにおいて、妥当性判定部19は、第1の数のキーワードを含むキーワードグループ全てについて妥当性の判定を行ったか判断し、まだ妥当性を行っていないキーワードグループがあれば、ステップS9に戻り、次のキーワードグループのスコアと閾値とを比較する。ステップS12aにて、第1の数のキーワードを含む全てのキーワードグループについて妥当性の判定が終わっていた場合は、次のステップS12bに移る。
About steps S6-S11, the validity of a search result is judged by the method similar to 1st Embodiment.
In the next step S12a, the
次のステップS12bにおいて、真となったキーワードグループがあったか否か判断し、真となったキーワードグループがあれば、ステップS13に移り、妥当であったキーワードグループとアイテムを出力する。一方、ステップS12bにおいて、真となったキーワードグループがなければ、図12のフローチャートに示すステップS5bに移る。 In the next step S12b, it is determined whether or not there is a keyword group that has become true. If there is a keyword group that has become true, the process proceeds to step S13, and a valid keyword group and item are output. On the other hand, if there is no true keyword group in step S12b, the process proceeds to step S5b shown in the flowchart of FIG.
図12のステップS5bにて、グルーピング処理部16は、1つの記事テキスト毎に、第1の数よりも大きい第2の数のキーワードを含むキーワードグループを作成する。例えば、図7のキーワードグループ識別子Gr001-005 〜Gr001-010のキーワードグループのように、グルーピング処理部16は、2つのキーワードを含むキーワードグループを作成する。キーワードグループを作成する処理は、検索処理に比べてシステムの負荷が小さいため、第2の数のキーワードを含むキーワードグループについては予め作成しておくようにしてもよい。
In step S5b of FIG. 12, the
その後、ステップS6〜S11については、第1実施形態と同様の方法で、検索結果の妥当性を判断する。
次のステップS12cにおいて、妥当性判定部19は、第2の数のキーワードを含むキーワードグループ全てについて妥当性の判定を行ったか判断し、まだ妥当性を行っていないキーワードグループがあれば、ステップS9に戻り、次のキーワードグループのスコアと閾値とを比較する。ステップS12cにて、第2の数のキーワードを含む全てのキーワードグループについて妥当性の判定が終わっていた場合は、次のステップS12dに移る。
Then, about steps S6-S11, the validity of a search result is judged by the method similar to 1st Embodiment.
In the next step S12c, the
次のステップS12dにおいて、真となったキーワードグループがあったか否か判断し、真となったキーワードグループがあれば、図11のステップS13に移り、妥当であったキーワードグループとアイテムを出力する。一方、ステップS12bにおいて、真となったキーワードグループがなければ、ステップS18に移り、妥当性判定部19は、当該記事テキストは、アイテムについて記述していないと判断する。
なお、ステップS18において処理を終了せずに、グルーピング処理部16は、1つの記事テキスト毎に、第2の数よりも大きい第3の数のキーワードを含むキーワードグループを作成し、同様な処理を続けてもよい。どの程度の数のキーワードを含むキーワードグループまで作成するかは、例えば、特定したいアイテムの種類等に応じて適宜決めればよい。
In the next step S12d, it is determined whether or not there is a keyword group that has become true. If there is a keyword group that has become true, the process proceeds to step S13 in FIG. 11 to output a valid keyword group and item. On the other hand, if there is no true keyword group in step S12b, the process proceeds to step S18, and the
Note that the
以上のように、アイテムを特定できたか否かに応じて、キーワードグループに含まれるキーワード数を多くして検索していくことで、処理量を抑えながら、記述の対象となっている情報を精度良く特定することができる As described above, depending on whether or not an item has been identified, the number of keywords included in the keyword group is increased so that the information to be described can be accurately managed while reducing the amount of processing. Can be identified well
上述した本発明の実施形態は、説明のための例示であり、上記実施形態に限定されるものではない。本発明は、ブログ以外のテキスト、例えばアンケートなどのデータに対しても適用可能である。また、音楽に係わるブログ記事を使って処理を行う例を示したが、音楽だけでなくその他の分野の記事についても、同様に処理できることはもちろんである。 The above-described embodiments of the present invention are illustrative examples, and are not limited to the above-described embodiments. The present invention can also be applied to texts other than blogs, for example, data such as questionnaires. Moreover, although the example which processes using the blog article about music was shown, it cannot be overemphasized that it can process similarly about the article of other fields other than music.
なお、本発明は各部の機能をコンピュータに実現させるためのプログラムを含むものである。これらのプログラムは、記録媒体から読み取られてコンピュータに取り込まれてもよいし、通信ネットワークを介して伝送されてコンピュータに取り込まれてもよい。 The present invention includes a program for causing a computer to realize the functions of the respective units. These programs may be read from a recording medium and loaded into a computer, or may be transmitted via a communication network and loaded into a computer.
また、本発明は以上説明した実施形態に限定されることはなく、本発明の要旨を逸脱しない範囲において種々変更が可能である。例えば、各実施形態や変形例等を組み合わせてもよい。また、テキスト情報処理装置1の一部の構成を別体にし、ネットワーク等を介してその別体とした構成と通信するようにして、テキスト情報処理装置1の機能を実現してもよい。
The present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present invention. For example, you may combine each embodiment, a modification, etc. Further, the functions of the text
1 テキスト情報処理装置(サーバ)
2 テキストデータサーバ
3 アイテムデータベース
4 端末装置
5 キーワードグループ記憶部
6 テキストデータ記憶部
7 スコア記憶部
8 アイテム算出結果記憶部
9 アイテムランキング情報記憶部
10 テキストデータ収集部
11 キーワード集合生成部
12 アイテム特定部
13 ランキング情報作成部
14 不要文字列処理部
15 キーワード抽出部
16 グルーピング処理部
17 検索部
18 類似度計算部
19 妥当性判定部
20 ネットワーク
1 Text information processing device (server)
2
7
Claims (13)
前記複数の情報間の類似度に基づくスコアを計算する類似度計算部と、
前記スコアに基づいて、前記検索条件の妥当性を判定する妥当性判定部と、
を備えることを特徴とする情報処理装置。 A search unit that searches the database and obtains a plurality of information corresponding to the search condition;
A similarity calculation unit that calculates a score based on the similarity between the plurality of pieces of information;
A validity determination unit that determines the validity of the search condition based on the score;
An information processing apparatus comprising:
ことを特徴とする請求項1に記載の情報処理装置。 The validity determination unit determines that the search condition is valid when the score is equal to or greater than a predetermined value.
The information processing apparatus according to claim 1.
ことを特徴とする請求項1または請求項2に記載の情報処理装置。 The search condition includes one or more keywords, and the validity determination unit changes a criterion for determining validity according to the number of keywords.
The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
ことを特徴とする請求項1から請求項3のいずれか1項に記載の情報処理装置。 When the validity determination unit determines that the search condition is not valid, the search unit searches the database using a search condition including a number of keywords different from the keyword included in the search condition.
The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
前記検索結果セットに含まれる複数の情報間の類似度に基づいて、複数の前記検索結果セットそれぞれに対応する複数のスコアを計算する類似度計算部と、
前記スコアが高い前記検索結果セットに含まれる情報を優先的に出力する妥当性判定部と、
を備えることを特徴とする情報処理装置。 A search unit which searches the database by using a plurality of search conditions, acquires a plurality of search result sets corresponding to each Do Ri said plurality of search conditions from a plurality of information,
Said based on the similarity between a plurality of information included in the search result set, the similarity calculation unit for calculating a plurality of scores corresponding to a plurality of said search result set,
A validity determination unit that preferentially outputs information included in the search result set having a high score;
An information processing apparatus comprising:
ことを特徴とする請求項5に記載の情報処理装置。The information processing apparatus according to claim 5.
ことを特徴とする請求項5に記載の情報処理装置。 The validity determination unit outputs at least one information included in the search result set when the score is equal to or greater than a predetermined value, and is included in the search result set when the score is less than a predetermined value. Output no information,
The information processing apparatus according to claim 5.
ことを特徴とする請求項7に記載の情報処理装置。The information processing apparatus according to claim 7.
ことを特徴とする請求項5から請求項8のいずれか1項に記載の情報処理装置。 The similarity calculation unit calculates a plurality of similarities corresponding to a combination of two pieces of information included in the search result set, an average value, a median value, a mode value, a quartile value of the plurality of similarities , Or, the minimum value is the score,
The information processing apparatus according to claim 5 , wherein the information processing apparatus is an information processing apparatus.
データベースを検索し、検索条件に対応した複数の情報を取得する検索ステップと、
前記検索ステップにおいて取得した前記複数の情報間の類似度に基づくスコアを計算する類似度計算ステップと、
前記類似度計算ステップで計算された前記スコアに基づいて、前記検索条件の妥当性を判定する妥当性判定ステップと、
を含むことを特徴とする情報処理方法。 An information processing method executed by one or more computers,
A search step of searching the database and obtaining a plurality of information corresponding to the search condition;
A similarity calculation step of calculating a score based on the similarity between the plurality of pieces of information acquired in the search step;
A validity determination step of determining the validity of the search condition based on the score calculated in the similarity calculation step;
An information processing method comprising:
複数の検索条件を用いてデータベースを検索し、複数の情報からなり前記複数の検索条件それぞれに対応する検索結果セットを複数取得する検索ステップと、
前記検索ステップにおいて取得された前記検索結果セットに含まれる複数の情報間の類似度に基づいて、複数の前記検索結果セットそれぞれに対応する複数のスコアを計算する類似度計算ステップと、
前記類似度計算ステップで計算された前記スコアが高い前記検索結果セットに含まれる情報を優先的に出力する妥当性判定ステップと、
を含むことを特徴とする情報処理方法。 An information processing method executed by one or more computers,
A search step of searching the database using a plurality of search conditions, acquires a plurality of search result sets corresponding to each Do Ri said plurality of search conditions from a plurality of information,
A similarity calculation step of calculating a plurality of scores are based on the similarity between a plurality of information, corresponding to a plurality of said search result set that is included in the acquired set of search results in the search step,
A validity determination step for preferentially outputting information included in the search result set having a high score calculated in the similarity calculation step;
An information processing method comprising:
データベースを検索し、検索条件に対応した複数の情報を取得する検索部、
前記検索部において取得した前記複数の情報間の類似度に基づくスコアを計算する類似度計算部、
前記類似度計算部で計算された前記スコアに基づいて、前記検索条件の妥当性を判定する妥当性判定部、
として機能させることを特徴とする情報処理プログラム。 One or more computers,
A search unit that searches a database and acquires a plurality of information corresponding to the search condition,
A similarity calculation unit that calculates a score based on the similarity between the plurality of pieces of information acquired in the search unit;
A validity determination unit that determines the validity of the search condition based on the score calculated by the similarity calculation unit;
An information processing program that functions as a computer program.
複数の検索条件を用いてデータベースを検索し、複数の情報からなり前記複数の検索条件それぞれに対応する検索結果セットを複数取得する検索部、
前記検索部において取得された前記検索結果セットに含まれる複数の情報間の類似度に基づいて、複数の前記検索結果セットそれぞれに対応する複数のスコアを計算する類似度計算部、
前記類似度計算部で計算された前記スコアが高い前記検索結果セットに含まれる情報を優先的に出力する妥当性判定部、
として機能させることを特徴とする情報処理プログラム。 One or more computers,
Search unit searches the database by using a plurality of search conditions, acquires a plurality of search result sets corresponding to each Do Ri said plurality of search conditions from a plurality of information,
Said based on the similarity between a plurality of information contained in the acquired set of search results in the search unit, the similarity calculation unit for calculating a plurality of scores corresponding to a plurality of said search result set,
A validity determination unit that preferentially outputs information included in the search result set having a high score calculated by the similarity calculation unit;
An information processing program that functions as a computer program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016236549A JP6260678B2 (en) | 2016-12-06 | 2016-12-06 | Information processing apparatus, information processing method, and information processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016236549A JP6260678B2 (en) | 2016-12-06 | 2016-12-06 | Information processing apparatus, information processing method, and information processing program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013072314A Division JP6056610B2 (en) | 2013-03-29 | 2013-03-29 | Text information processing apparatus, text information processing method, and text information processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017068862A JP2017068862A (en) | 2017-04-06 |
JP6260678B2 true JP6260678B2 (en) | 2018-01-17 |
Family
ID=58492666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016236549A Active JP6260678B2 (en) | 2016-12-06 | 2016-12-06 | Information processing apparatus, information processing method, and information processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6260678B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955763A (en) * | 2019-11-15 | 2020-04-03 | 深圳供电局有限公司 | Data searching method and system based on audit risk database |
CN112491649A (en) * | 2020-11-17 | 2021-03-12 | 中国平安财产保险股份有限公司 | Interface joint debugging test method and device, electronic equipment and storage medium |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6910037B2 (en) * | 2002-03-07 | 2005-06-21 | Koninklijke Philips Electronics N.V. | Method and apparatus for providing search results in response to an information search request |
JP5082917B2 (en) * | 2008-02-25 | 2012-11-28 | 日本電気株式会社 | Illegal information detection device, illegal information detection method, and illegal information detection program |
JP5265610B2 (en) * | 2010-04-13 | 2013-08-14 | ヤフー株式会社 | Related word extractor |
JP2012064200A (en) * | 2010-08-16 | 2012-03-29 | Canon Inc | Display controller, control method of display controller, program and recording medium |
-
2016
- 2016-12-06 JP JP2016236549A patent/JP6260678B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017068862A (en) | 2017-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6056610B2 (en) | Text information processing apparatus, text information processing method, and text information processing program | |
US11720572B2 (en) | Method and system for content recommendation | |
JP7028858B2 (en) | Systems and methods for contextual search of electronic records | |
Gao et al. | Modeling interestingness with deep neural networks | |
Ma et al. | Exploring performance of clustering methods on document sentiment analysis | |
US9767144B2 (en) | Search system with query refinement | |
US20130060769A1 (en) | System and method for identifying social media interactions | |
US9031944B2 (en) | System and method for providing multi-core and multi-level topical organization in social indexes | |
US20110153595A1 (en) | System And Method For Identifying Topics For Short Text Communications | |
WO2016000555A1 (en) | Methods and systems for recommending social network-based content and news | |
CN112434151A (en) | Patent recommendation method and device, computer equipment and storage medium | |
WO2015149533A1 (en) | Method and device for word segmentation processing on basis of webpage content classification | |
US9311372B2 (en) | Product record normalization system with efficient and scalable methods for discovering, validating, and using schema mappings | |
CN108319583B (en) | Method and system for extracting knowledge from Chinese language material library | |
Lipczak et al. | The impact of resource title on tags in collaborative tagging systems | |
Al-Kabi et al. | Content-based analysis to detect Arabic web spam | |
Baowaly et al. | Predicting the helpfulness of game reviews: A case study on the steam store | |
JP5427694B2 (en) | Related content presentation apparatus and program | |
JP6260678B2 (en) | Information processing apparatus, information processing method, and information processing program | |
JP6409071B2 (en) | Sentence sorting method and calculator | |
Sariki et al. | A book recommendation system based on named entities | |
Tian et al. | A prediction model for web search hit counts using word frequencies | |
Yang et al. | A new ontology-supported and hybrid recommending information system for scholars | |
Huang et al. | Rough-set-based approach to manufacturing process document retrieval | |
JP2020042545A (en) | Information processing device, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170905 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171101 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20171114 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171127 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6260678 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |