JP2011059947A - Device, method and program for generating ranking function - Google Patents
Device, method and program for generating ranking function Download PDFInfo
- Publication number
- JP2011059947A JP2011059947A JP2009208332A JP2009208332A JP2011059947A JP 2011059947 A JP2011059947 A JP 2011059947A JP 2009208332 A JP2009208332 A JP 2009208332A JP 2009208332 A JP2009208332 A JP 2009208332A JP 2011059947 A JP2011059947 A JP 2011059947A
- Authority
- JP
- Japan
- Prior art keywords
- case
- ranking function
- order relation
- database
- domain
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、ウェブ検索システムにおいて,検索結果のランキングを行うスコアを算出するためのランキング関数を生成する技術に関する。 The present invention relates to a technique for generating a ranking function for calculating a score for ranking search results in a web search system.
近年、インターネットの普及によって、インターネット上の膨大なWeb文書群(電子文書群)からユーザが必要とする情報を、的確に検索するウェブ検索システムの重要性が高まっている。このウェブ検索システムでは、検索結果のランキングを行うためのスコアを算出する。このスコア算出のためのランキング関数生成には非特許文献1.2の手法が利用されている。 In recent years, with the spread of the Internet, the importance of a web search system that accurately retrieves information required by a user from an enormous web document group (electronic document group) on the Internet has increased. In this web search system, a score for ranking search results is calculated. The method of Non-Patent Document 1.2 is used to generate the ranking function for calculating the score.
図6に基づき概略を説明すれば、ランキング関数生成装置1は、目標ドメイン事例DB010の格納データを入力とし、順序関係DB生成機能部050,順序関係DB060,弱ランキング関数生成機能部070,事例選択機能部110,弱ランキング関数格納DB090,弱ランキング関数統合機能部100を通じて、ランキング関数120を出力する。このとき目標ドメイン事例DB010には、非特許文献1.2などで用いられる機械学習アルゴリズムをもとに、ランキング関数を生成するために必要な順序関係DB060のデータ構築用の事例データが格納されている。
Describing the outline based on FIG. 6, the ranking
従来技術によれば、ランキング関数生成装置1への入力として、人手による評価データもしくは非特許文献2のようにクリックスルーログ、即ち検索クエリに対するユーザのクリック履歴を検索システムが保存したログなどを元に生成された事例データが用いられてきた。
According to the prior art, as an input to the ranking function generating
ところが、非特許文献1.2のような教師あり機械学習のアルゴリズムは、このような性質の異なる各事例データを同時に利用するとランキング関数の精度が低下するおそれがあり、その適用が困難な問題があった。 However, the supervised machine learning algorithm as described in Non-Patent Document 1.2 has a possibility that the accuracy of the ranking function may be lowered when each case data having different properties is used at the same time. there were.
本発明は、上述のような問題点を解決するためになされたものであり、前述のように性質が異なる複数の事例データを複数用いて、ランキング関数の生成を実現することを解決課題としている。 The present invention has been made to solve the above-described problems, and a problem to be solved is to generate a ranking function using a plurality of case data having different properties as described above. .
そこで、本発明は、性質が異なる複数の事例データに対して、別ドメイン事例データの中から目標ドメイン事例データに近い事例を選択しながら学習を行うことにより、高精度のランキング関数生成を実現する。 Therefore, the present invention realizes highly accurate ranking function generation by performing learning while selecting a case close to the target domain case data from different case data for a plurality of case data having different properties. .
本発明の一態様は、検索キーワードに基づき電子文書群を検索した検索結果をランキングするためのランキング関数を生成する装置であって、複数のドメイン事例データベースに格納された性質の異なる事例データを統合する事例データ統合手段と、前記事例統合手段の統合した事例データに対して事例同士に順序関係を付与して順序関係データベースに保存する順序関係生成手段と、前記順序関係データベースに保存された順序関係をランキングするためのランキング関数を生成するランキング関数生成手段と、前記順序関係データベースの保存データを順次更新し、更新された順序関係に基づき前記ランキング関数生成手段が生成した各ランキング関数を関数格納データベースに保存する事例選択手段と、前記関数格納データベースの保存データを統合し、最終的なランキング関数を生成するランキング関数統合手段と、を備える。 One aspect of the present invention is an apparatus for generating a ranking function for ranking search results obtained by searching an electronic document group based on a search keyword, and integrating case data having different properties stored in a plurality of domain case databases Case data integrating means, order relation generating means for assigning order relations between cases to the case data integrated by the case integrating means and storing them in an order relation database, and order relations saved in the order relation database Ranking function generating means for generating a ranking function for ranking, and the stored data of the order relation database are sequentially updated, and each ranking function generated by the ranking function generation means based on the updated order relation is stored in the function storage database. The example selection means to be stored in the database and the function storage database Integrate data comprises a ranking function integration means for generating a final ranking function, a.
本発明の他の態様は、検索キーワードに基づき電子文書群を検索した検索結果をランキングするためのランキング関数を生成する方法であって、事例データ統合手段が、複数のドメイン事例データベースに格納された性質の異なる事例データを統合する第1ステップと、順序関係生成手段が、前記第1ステップで統合した事例データに対して事例同士に順序関係を付与して順序関係データベースに保存する第2ステップと、ランキング関数生成手段が、前記順序関係データベースに保存された順序関係をランキングするためのランキング関数を生成する第3ステップと、事例選択手段が、前記順序関係データベースに保存された順序関係を順次更新し、前記第3ステップを繰り返して生成された各ランキング関数を関数格納データベースに保存する第4ステップと、ランキング関数統合手段が、前記関数格納データベースの保存データを統合し、最終的なランキング関数を生成する第5ステップと、を有する。 Another aspect of the present invention is a method for generating a ranking function for ranking a search result obtained by searching an electronic document group based on a search keyword, wherein case data integration means is stored in a plurality of domain case databases. A first step of integrating case data having different properties, and a second step in which the order relation generating means assigns an order relation between the cases for the case data integrated in the first step and stores the order relation in the order relation database. The ranking function generating means generates a ranking function for ranking the order relations stored in the order relation database; and the case selection means sequentially updates the order relations stored in the order relation database. Each ranking function generated by repeating the third step is stored in the function storage database. A fourth step of, ranking function integration means integrates the stored data of said function storage database, and a fifth step of generating the final ranking function, a.
なお、本発明は、前記装置としてコンピュータを機能させるプログラムに構成することができる。このプログラムは記録媒体に記録した態様で提供してもよい。 In addition, this invention can be comprised in the program which functions a computer as said apparatus. You may provide this program with the aspect recorded on the recording medium.
本発明によれば、性質が異なる複数の事例データ、例えば人手による評価データやクリックスルーログなどから得られる訓練データを用いて、ランキング関数の生成を行うことが可能となる。 According to the present invention, it is possible to generate a ranking function using a plurality of case data having different properties, for example, training data obtained from manual evaluation data or click-through logs.
以下、本発明の実施形態に係るランキング関数生成装置を説明する。このランキング関数生成装置は、好ましくは従来ランキング関数生成に用いられてきた人手評価データなどの評価データを目標ドメイン事例データとし、目標ドメイン事例DBに格納する。一方、目標ドメイン事例データと性質が異なるものの、ランキング関数生成に利用可能なクリックスルーログなどのデータを別ドメイン事例データとし、別ドメイン事例DBに格納する。 Hereinafter, a ranking function generation device according to an embodiment of the present invention will be described. This ranking function generating device preferably uses evaluation data such as manual evaluation data conventionally used for ranking function generation as target domain case data and stores it in the target domain case DB. On the other hand, data such as a click-through log that can be used for ranking function generation is stored in another domain case DB as another domain case data, although the property is different from the target domain case data.
ここでドメインが異なることは、データの性質が異なることを示している。この際、目標ドメインデータには、最終的に達成したいとされるスコアが付与された正解を用いるため、人手による評価データを目標ドメインデータに用いることが適切である。 Here, different domains indicate that the nature of the data is different. At this time, since the correct answer to which the score that is finally desired to be achieved is used as the target domain data, it is appropriate to use human evaluation data as the target domain data.
≪装置構成例≫
図1に基づき前記ランキング関数生成装置の構成例を説明する。ここでは前記ランキング関数生成装置2は、図示省略のユーザ端末からの検索指示に応じて電子文書群を検索するWeb検索システム(いわゆる検索エンジン)を構成する。
≪Example of device configuration≫
A configuration example of the ranking function generation device will be described with reference to FIG. Here, the ranking
具体的には前記ランキング関数生成装置2は、通常のコンピュータのハードウェアリソース、例えばCPU,メモリ(RAM),ハードディスクドライブ装置,通信インタフェースなどを備える。
Specifically, the ranking
このハードウェアリソースとソフトウェアリソースとの協働の結果、前記ランキング関数生成装置2は、前記目標ドメイン事例DB010,前記別ドメイン事例DB020,事例DB生成機能部030,事例DB040,順序関係DB生成機能部050,順序関係DB060,弱ランキング関数生成機能部070,事例選択機能部110,弱ランキング関数格納DB090,弱ランキング関数統合機能部100を有している。ここでは別ドメイン事例DB020,事例DB生成機能部030を有する点で従来技術と相違する。
As a result of the cooperation between the hardware resource and the software resource, the ranking
このうち前記各DB010.020.040.060.090は、前記ハードディスクドライブ装置上に構築されているものとする。なお、前記各ドメイン事例DB010.020は、前記ランキング関数生成装置2に内蔵する必要はなく、データ送受信可能な外部データベースとして構築してもよい。表1.2は、前記各ドメイン事例DB010.020に格納されるデータ構成例を示している。
Of these, each DB010.020.0.00.00.00.090 is assumed to be built on the hard disk drive device. Each domain case DB 010.020 does not need to be built in the ranking
表1は、前記目標ドメイン事例DB010のデータ構成例を示し、ランキング関数を生成するために用いられる事例データが格納されている。ここでは「qid 1」のクエリにおいて、スコア5の文書はスコア4の文書よりもランキング上位に位置する情報を示している。また、特徴1〜特徴Kは、「qid 1」のクエリによって検索された際の各特徴の値を示している。この特徴は、例えば単語頻度のようにクエリに依存する値や、ページの重要度のように静的に付与されるものがある。ページの重要度は、Webページのリンク情報などを用いて算出される。
Table 1 shows a data configuration example of the target
表2は、前記別ドメイン事例DB020のデータ構成例を示している。ここでは前記別ドメイン事例DB20は、前記目標ドメイン事例DB010と異なる性質の事例データを保持するデータベースであり、基本的には前記目標ドメイン事例DB10が保持するデータと同じ形式でクエリ,文書に対するスコアが付与されている。別ドメイン事例としては、例えばクリックスルーログ(ユーザのクリック履歴)などが挙げられる。
Table 2 shows a data configuration example of the separate
また、前記各機能部030.050.070.100.110の概略を説明すれば、前記事例DB作成機能部030は、前記各ドメイン事例DB010.020から入力されたデータに基づき目標ドメイン、別ドメインという情報を保持した事例データを前記事例DB40に格納する。また、前記順序関係DB生成機能部050は、前記事例DB040を参照してランキング関数を生成するために、それぞれの順序関係毎に重み初期値を設定する。この重み付き順序関係データを前記順序関係DB060に格納する。
Further, the outline of each functional unit 030.050.070.100.110 will be described. The case DB creation functional unit 030 is configured such that the target domain, another domain is based on the data input from each domain case DB 010.020. Is stored in the case DB 40. Further, the order relation DB
前記弱ランキング関数生成機能部070は、前記順序関係DB060を参照して重み付き順序関係データに基づきランキング関数(以下、最終的に生成されるランキング関数と区別するために弱ランキング関数とする。)を生成する。
The weak ranking function
前記事例選択機能部110は、前記弱ランキング関数生成機能部070で生成された弱ランキング関数と、前記順序関係DB60の格納データと、前記事例DB40の格納データとを入力として、前記順序関係DB060に格納された順序関係の重みを更新する。この更新された重み付き順序関係データに基づき弱ランキング関数の生成が多数回にわたって試行される。
The case
このとき順序関係の重みの更新は、従来技術とは異なり、前記事例DB040に格納された目標ドメインと別ドメインとで区別することにより、別ドメインデータ中から役立つ順序関係を選択する。すなわち、目標ドメインデータについては生成された弱ランキング関数で誤ってランキングされた順序関係の重みを大きくして更新する。
At this time, in order to update the weight of the order relation, unlike the conventional technique, a useful order relation is selected from the different domain data by distinguishing between the target domain stored in the
これにより次回の試行では、前回の試行で良好にランキングできなかった事例に対して有効に働くような弱ランキング関数を生成することができる。また、別ドメインデータについては誤ってランキングされた順序の重みを小さくして更新することによって、次回の試行で目標ドメイン学習のノイズとなるような順序関係の影響を排除することができる。このように各試行の結果生成された弱ランキング関数の情報は、前記事例選択機能部110を通じて前記弱ランキング関数DB090に格納される。
Thereby, in the next trial, a weak ranking function that works effectively for the case where ranking was not successful in the previous trial can be generated. Also, by updating the different domain data by reducing the weight of the ranking that is erroneously ranked, it is possible to eliminate the influence of the order relationship that causes noise in the target domain learning in the next trial. Information on the weak ranking function generated as a result of each trial as described above is stored in the weak
前記弱ランキング関数統合機能部100は、前記弱ランキング関数DB090を参照して各試行の結果生成された弱ランキング関数を統合し、一つの最終的なランキング関数120を生成・出力する。出力されたランキング関数120は、Web検索システム(いわゆる検索エンジン)にて、検索結果をランキングするスコア算出に利用される。
The weak ranking function
図2は、前記ランキング関数生成装置2の全体的な処理ステップ(S001〜S009)を示している。ここでは処理が開始されると、前記目標ドメイン事例DB010および前記別ドメイン事例DB020の格納データを入力として、前記事例DB生成機能部030を通じて前記事例DB040の格納データが作成される(S001)。また、前記事例DB040の格納データを入力として、前記順序関係DB作成機能部050を通じて、前記順序関係DB060の格納データが作成される(S002)。
FIG. 2 shows the overall processing steps (S001 to S009) of the
つぎに前記弱ランキング関数生成機能部070は、あらかじめ設定された弱ランキング関数生成の総試行数Nに達するまで弱ランキング関数の生成を試行する(S003〜S005)。ここでは弱ランキング関数の生成は、試行回数I=0を初期値とし、「試行回数I<設定総試行数N」である限りS006〜S008の処理が繰り返される(S004.S005)。なお、総試行数Nは、閾値としてプログラムなどに設定しておけばよい。
Next, the weak ranking function
すなわち、前記順序関係DB060および前記事例DB040の格納データを入力とし、前記弱ランキング関数生成機能部070により弱ランキング関数を生成する(S006)。また、生成された弱ランキング関数と前記順序関係DB060および前記事例DB040の格納データを入力とし、前記事例選択機能部110により前記順序関係DB060および弱ランキング関数格納DB090の格納データを更新する(S007)。
That is, the weak ranking function is generated by the weak ranking function
そして、試行回数「I」に「I+1」を代入し(S008)、「試行回数I=設定総試行数N」が成立すれば、S009に進む(S005)。S009では前記弱ランキング関数格納DB090の格納データを入力とし、前記弱ランキング関数統合機能部100によりランキング関数120が生成され、処理を終了する。以下、前記各機能部030.050.070.110.100の具体的な処理内容を説明する。
Then, “I + 1” is substituted for the number of trials “I” (S 008), and if “trial number I = total number of trials N” is established, the process proceeds to S 009 (S 005). In S009, the stored data of the weak ranking
≪事例DB生成機能部030≫
前記事例DB生成機能部030は、各ドメイン事例DB010.020からの入力データを結合し、前記事例DB040に格納する。このとき連続番号の事例IDとドメイン情報(目標ドメインであるか、別ドメインであるか)という情報を加える。これにより入力データに基づき目標ドメイン(target)、別ドメイン(different)といった情報を保持した前記事例DB040が構築される。この処理内容を図3のフローチャートに基づき説明する。
≪Case DB generation function unit 030≫
The case DB generation function unit 030 combines input data from each domain case DB 010.020 and stores the combined data in the
S101〜S103:まず、処理が開始されると、前記事例DB40に格納する事例IDの番号「i」に「1」を代入し(S101)、前記目標ドメイン事例DB010を参照して入力データ中の未処理レコードを取得する(S102)。ここで取得したレコードの先頭に事例IDの番号「i」,ドメイン(target)のカラムを加えたレコードを前記事例DB40に追加する(S103)。
S101 to S103: First, when the process is started, “1” is substituted for the number “i” of the case ID stored in the case DB 40 (S101), and the target
S104.S105:事例IDの番号「i」に「i+1」を代入し(S104)、前記目標ドメインDB010に未処理レコードが存在するか否かを確認する(S105)。確認の結果、未処理のレコードがあればS102に戻ってS103の処理を繰り返す一方、未処理のレコードが無ければS106に進む。 S104. S105: “i + 1” is substituted into the case ID number “i” (S104), and it is confirmed whether or not an unprocessed record exists in the target domain DB 010 (S105). As a result of the confirmation, if there is an unprocessed record, the process returns to S102 and repeats the process of S103.
S106.S107:つぎに前記別ドメイン事例DB020から未処理のレコードを取得する(S106)。ここでは取得したレコードの先頭に事例ID「i」,ドメイン「different」のカラムを加えたレコードを前記事例DB040に追加する(S107)。 S106. S107: Next, an unprocessed record is acquired from the separate domain case DB 020 (S106). Here, a record in which the column of the case ID “i” and the domain “different” is added to the top of the acquired record is added to the case DB 040 (S107).
S108.S109:事例IDの番号「i」に「i+1」を代入し(S108)、前記別ドメイン事例DB020に未処理レコードが存在するか否かを確認する(S109)。確認の結果、前記別ドメイン事例DB020に未処理のレコードが存在すれば、S106に戻ってS107の処理を繰り返す一方、未処理のレコードが無ければ処理を終了する。
S108. S109: “i + 1” is substituted for the case ID number “i” (S108), and it is confirmed whether or not an unprocessed record exists in the separate domain case DB 020 (S109). As a result of the confirmation, if there is an unprocessed record in the separate
なお、表3は、S101〜S109の処理の結果、前記事例DB040に格納されるレコードの一例を示している。ここでは前記事例DB040には、事例ID毎にドメイン(target/different)やクエリ(qid)、スコア、特徴1〜Kの情報が格納されている。
Table 3 shows an example of records stored in the
≪順序関係DB生成機能部050≫
前記順序関係DB作成機能部050は、前記事例DB040の格納データを入力とし、前記順序関係DB060を生成する。ここでは同じクエリ(qid)・同じドメインのレコードについて、スコアに差がある事例同士をひとつの順序関係として,前記順序関係DB060に格納する。
<< Order relation DB
The order relation DB
このとき前記順序関係DB060は、事例同士の順序関係の情報(重み)を保持する。重みは、前記弱ランキング関数生成機能部070を用いて、弱ランキング関数を生成する際に用いられる。以下、図4のフローチャートに基づき前記作成機能部050の処理を説明する。ここでは前記事例DB040の格納データ総量(レコード総数)を「M」と表す。
At this time, the
S201.S202:処理が開始されると、まず「M」に「0」を代入し(S201)、前記事例DB040からドメイン毎にクエリ(qid)のユニーク集合を取得する(S202)。ここで取得したクエリ集合をQとする。 S201. S202: When processing is started, first, “0” is substituted for “M” (S201), and a unique set of queries (qid) is acquired for each domain from the case DB 040 (S202). Let Q be the query set acquired here.
S203:S202で取得した集合Qに未処理のクエリ(qid)が存在するか否かを確認する。確認の結果、未処理のクエリ(qid)が存在すればS204に進む一方、存在しなければS211に進む。 S203: It is confirmed whether or not an unprocessed query (qid) exists in the set Q acquired in S202. If there is an unprocessed query (qid) as a result of the confirmation, the process proceeds to S204, and if not, the process proceeds to S211.
S204.S205:クエリ集合Qから次の未処理クエリqとドメインdを抽出する(S204)。つぎに前記事例DB040からクエリqとドメインdを含むレコードを取得し、スコア順にソートし、これを「R」とする(S205)。
S204. S205: The next unprocessed query q and domain d are extracted from the query set Q (S204). Next, records including the query q and the domain d are acquired from the
S206:S205のソート結果Rに未処理のレコードがあるか否かを確認し、未処理のレコードがあればS207に進み、未処理のレコードが無ければS203に戻って次のクエリ(qid)の処理を実施する。 S206: It is checked whether or not there is an unprocessed record in the sort result R of S205. If there is an unprocessed record, the process proceeds to S207. If there is no unprocessed record, the process returns to S203 and the next query (qid) Perform the process.
S207〜209:前記事例DB040からクエリqとドメインdを含む次の未処理レコードを取得する(S207)。取得したレコードを「r」とする。ここではソート結果Rに含まれる「r」以降のレコードのうち、「r」よりもスコアの小さいドメインの等しいレコードを取得する(S208)。取得したレコードを「R’」とする。 S207 to 209: The next unprocessed record including the query q and the domain d is acquired from the case DB 040 (S207). Let the acquired record be “r”. Here, among the records after “r” included in the sort result R, records having the same domain with a score lower than “r” are acquired (S208). Let the acquired record be “R ′”.
この「R’」に含まれる各「r’」について、「target/different」のドメイン、「r」の事例IDを上位事例ID、「r’」の事例IDを下位IDとして前記順序関係DB60に出力する(S209)。 For each “r ′” included in “R ′”, the “target / differential” domain, the “r” case ID as the upper case ID, and the “r ′” case ID as the lower ID are stored in the order relation DB 60. Output (S209).
S210.S211:「M」に「M+1」を代入し(S210)、S206に戻って未処理レコードの有無が確認される。このときソート結果Rに未処理のレコードが無ければ、S203にて未処理クエリの有無が確認される。 S210. S211: “M + 1” is substituted for “M” (S210), and the process returns to S206 to check whether there is an unprocessed record. At this time, if there is no unprocessed record in the sort result R, the presence or absence of an unprocessed query is confirmed in S203.
ここで未処理のクエリが集合Qに無ければ、全てのレコードの重みを1/Mに設定し(S211)、処理を終了する。設定される重みは初期値とする。なお、表4は、S201〜S211の処理の結果、前記順序関係DB060に格納されるレコードの一例を示し、ドメイン(target/different)毎に上位事例ID、下位事例ID、重み(初期値)の情報が格納されている。
If there is no unprocessed query in the set Q, the weights of all records are set to 1 / M (S211), and the process is terminated. The set weight is an initial value. Table 4 shows an example of records stored in the
≪弱ランキング関数生成機能部070≫
前記弱ランキング関数生成機能部070には,例えば非特許文献1の「WeakLearn」アルゴリズムを利用することができる。ここでは弱ランキング関数生成機能部という名称であるが,通常のランキング関数生成装置を利用できる。
≪Weak ranking function
For the weak ranking function
非特許文献1の「WeakLearn」アルゴリズムは、ひとつの特徴に着目し,その値が閾値以上であれば「1」,閾値以下であれば「0」を与えるランキング関数である。したがって、優位度,特徴ID,閾値の3つの情報を保持すれば,弱ランキング関数を再現することが可能である。
The “WeakLearn” algorithm of
具体的には前記弱ランキング関数生成機能部070は、前記順序関係DB060に格納された順序関係の重みを考慮して、弱ランキング関数の生成を行う。このとき前記順序関係DB060において重みの大きい順序関係の誤りコスト(優位度)を大きく,重みの小さい順序関係を誤りコスト(優位度)が小さいとみなすことで、重みの大きい順序関係を適切にランキングするための弱ランキング関数を生成する。
Specifically, the weak ranking function
≪事例選択機能部110≫
以下、前記事例選択機能部110の処理内容を、図5のフローチャートに基づき説明する。ここでは前記順序関係DB060に格納された順序関係の重み、即ち弱ランキング関数生成時の重みを順次更新していく。
<< Case
Hereinafter, the processing content of the case
S301:まず、前記弱ランキング関数生成機能部070を通じて生成された弱ランキング関数の生成元、即ち前記順序関係DB060の順序関係に対する重み付き正解率となる優位度αを算出する。αの算出方法は、例えば非特許文献1の方法などを利用する。
S301: First, a superiority α that is a weighted correct answer rate with respect to a source of weak ranking function generated through the weak ranking function
ここでは前記順序関係DB060のドメインが「target」であるレコードのうち、生成された弱ランキング関数によって誤ってランキングされた順序関係の重みの和を全体の重み和で正規化したものを「{ EMBED Equation.3 , }」とすると、式(1)を用いて優位度αを求めることができる。
Here, among the records whose domain of the
S302.S302:前記正規化のための正規化総量Zに「0」を代入し(S302)、続いて前記順序関係DB060から未処理のレコードを取得する(S303)。ここで取得したレコードを「p」とする。 S302. S302: “0” is substituted into the normalized total amount Z for normalization (S302), and then an unprocessed record is acquired from the order relation DB 060 (S303). The record acquired here is assumed to be “p”.
S304.S305:弱ランキング関数によってS303で取得したレコードpの上位事例と下位事例とをランキングする(S304)。このランキングは、前記事例DB040から入力された特徴1〜Kを用いる。このときレコードpが、正しくランキングされた場合はS307に進む一方、正しくランキングされていない場合はS306に進む(S305)。
S304. S305: Ranking the upper case and lower case of the record p acquired in S303 by the weak ranking function (S304). This ranking uses
S306:前記順序関係DB060における順序関係のレコードpの重みを更新する。重みの更新方法は、目標ドメイン事例(target)と別ドメイン事例(different)とで異なる。ここでは前回の弱ランキング関数の生成試行における重みを「Wt」とすると、例えば式(2)の更新式で重みを更新することができる。
S306: The weight of the record p of the order relation in the
このとき別ドメインについては重みを下げる。例えば式(2)における「α」を式(3)とする。この式(3)において、「n」は、順序関係DB060の「different」ドメインのレコード数、Nは弱ランキング関数生成の設定総試行数を示している。
At this time, the weight is lowered for another domain. For example, “α” in equation (2) is defined as equation (3). In this equation (3), “n” represents the number of records in the “different” domain of the
S307〜S309:正規化総量Zに「Z+p」の重みを代入し(S307)、未処理のレコードが前記順序関係DB60に存在するか否かを確認する(S308)。確認の結果、未処理のレコードが存在すればS303に戻って以後の処理を再開する一方、未処理のレコードが存在しなければS309に進む。S309では、前記順序関係DB060の全てのレコードの重みを正規化総量Zで除算した値に更新する。このS301〜S309の処理を弱ランキング関数の生成毎に実施することで前記弱ランキング関数DB090が構築される。
S307 to S309: The weight of “Z + p” is substituted into the normalized total amount Z (S307), and it is confirmed whether or not an unprocessed record exists in the order relation DB 60 (S308). As a result of the confirmation, if there is an unprocessed record, the process returns to S303 and the subsequent processing is resumed. On the other hand, if there is no unprocessed record, the process proceeds to S309. In S309, the weights of all the records in the
表5は、前記弱ランキング関数DB090の格納データ構成例を示している。ここでは非特許文献1のWeakLearn」アルゴリズムを用いて弱ランキング関数を生成したデータ構成例を示している。このデータ構成例では、S306で順次更新された優位度と、弱ランキング関数生成時の閾値と、S304のランキングに用いた特徴IDとが格納されている。
Table 5 shows an example of the data structure stored in the weak
≪弱ランキング関数統合機能部100≫
前記弱ランキング関数統合機能部100は、非特許文献1に示される方法などで弱ランキング関数を統合し、最終的なランキング関数120を生成する。具体的には、前記弱ランキング関数DB090に格納された各弱ランキング関数(表5では試行1〜試行N)を、それぞれの優位度で重み付けして足し合わせてランキング関数120を生成する。
≪Weak ranking function
The weak ranking function
このとき試行1〜Nの全ての弱ランキング関数ではなく、例えば半分以降のN/2からNの弱ランキング関数を足し合わせるなど、足し合わせる数を指定することも可能である。したがって、前記ランキング関数生成装置2によれば、従来技術では実現できなかった性質の異なる複数の事例データ、即ち人手による評価データやクリックスルーログなどから得られる複数の訓練データを用いて、ランキング関数の生成を行うことが可能となる。
At this time, instead of all weak ranking functions of
なお、生成されたランキング関数120は、Web検索システム(いわゆる検索エンジン)にて、検索キーワードに基づき電子文書群を検索した検索結果をランキングするためのスコア算出に利用され、電子文書群の検索結果がスコアに従ってソートされ、ユーザ端末に返信される。
The generated
≪プログラムなど≫
本発明は、前記ランキング関数生成装置2の各構成010.012.030〜070,090.100.110の一部もしくは全部として、コンピュータを機能させるランキング関数生成プログラムに構成することもできる。このプログラムによれば、S001〜S009.S101〜S109.S201〜S211.S301〜S309の全ステップあるいは一部のステップをコンピュータに実行させることができる。
≪Programs≫
The present invention can also be configured as a ranking function generation program that causes a computer to function as a part or all of the components 010.012.030 to 070,090.100.110 of the ranking
前記プログラムは、Webサイトや電子メールなどネットワークを通じて提供することができる。また、前記プログラムは、CD−ROM,DVD−ROM,CD−R,CD−RW,DVD−R,DVD−RW,MO,HDD,Blu−ray Disk(登録商標)などの記録媒体に記録して、保存・配布することも可能である。この記録媒体は、記録媒体駆動装置を利用して読み出され、そのプログラムコード自体が前記実施形態の処理を実現するので、該記録媒体も本発明を構成する。 The program can be provided through a network such as a website or e-mail. The program is recorded on a recording medium such as a CD-ROM, DVD-ROM, CD-R, CD-RW, DVD-R, DVD-RW, MO, HDD, Blu-ray Disk (registered trademark). It is also possible to save and distribute. This recording medium is read using a recording medium driving device, and the program code itself realizes the processing of the above embodiment, so that the recording medium also constitutes the present invention.
2…ランキング関数生成装置
010…目標ドメイン事例DB(ドメイン事例データベース)
012…別ドメイン事例DB(ドメイン事例データベース)
030…事例DB生成機能部(事例データ統合手段)
040…事例DB(事例データベース)
050…順序関係DB生成機能部(順序関係生成手段)
060…順序関係DB(順序関係データベース)
070…弱ランキング関数生成機能部(ランキング関数生成手段)
090…弱ランキング関数格納DB(関数格納データベース)
100…弱ランキング関数統合機能部(ランキング関数統合手段)
110…事例選択機能部(事例選択手段)
120…ランキング関数
2 ... Ranking
012… Another domain case DB (domain case database)
030 ... Case DB generation function unit (case data integration means)
040 ... Case DB (Case Database)
050 ... Order relation DB generation function section (order relation generation means)
060 ... Order relation DB (order relation database)
070 ... Weak ranking function generation function section (ranking function generation means)
090 ... weak ranking function storage DB (function storage database)
100: Weak ranking function integration function (ranking function integration means)
110 ... Case selection function part (case selection means)
120 ... Ranking function
Claims (7)
複数のドメイン事例データベースに格納された性質の異なる事例データを統合する事例データ統合手段と、
前記事例データ統合手段の統合した事例データに対して事例同士に順序関係を付与して順序関係データベースに保存する順序関係生成手段と、
前記順序関係データベースに保存された順序関係をランキングするためのランキング関数を生成するランキング関数生成手段と、
前記順序関係データベースの保存データを順次更新し、更新された順序関係に基づき前記ランキング関数生成手段が生成した各ランキング関数を関数格納データベースに保存する事例選択手段と、
前記関数格納データベースの保存データを統合し、最終的なランキング関数を生成するランキング関数統合手段と、
を備えることを特徴とするランキング関数生成装置。 An apparatus for generating a ranking function for ranking search results obtained by searching an electronic document group based on a search keyword,
Case data integration means for integrating case data with different properties stored in multiple domain case databases;
Order relation generating means for assigning an order relation between cases for the case data integrated by the case data integration means and storing it in an order relation database;
Ranking function generating means for generating a ranking function for ranking the order relation stored in the order relation database;
Case selection means for sequentially updating the storage data of the order relation database, and storing each ranking function generated by the ranking function generation means based on the updated order relation in a function storage database;
Ranking function integration means for integrating the stored data of the function storage database and generating a final ranking function;
A ranking function generating device comprising:
前記事例データ統合手段は、前記各ドメイン事例データベースに格納された事例データに対して事例毎にドメインの種別を追記して事例データベースに保存し、
前記順序関係生成手段は、前記事例データベースに格納された同一クエリ・同一ドメインの事例データに対して、スコア差を有する事例同士の順序関係の重み情報をドメイン毎に前記順序関係データベースの保存し、
前記ランキング関数生成手段は、前記順序関係データベースに保存された重み情報に応じてランキング関数を生成し、
前記事例選択手段は、前記順序関係データベースに保存された重み情報の更新手法をドメインに応じて区別する
ことを特徴とする請求項1記載のランキング関数生成装置。 Case data stored in each domain case database has a score of each electronic document and a feature value at the time of query search for each query,
The case data integration means adds a domain type for each case to the case data stored in each domain case database and saves it in the case database.
The order relation generation means stores the weight information of the order relation between cases having a difference in scores for the case data of the same query and the same domain stored in the case database in the order relation database for each domain,
The ranking function generating means generates a ranking function according to weight information stored in the order relation database,
The ranking function generation device according to claim 1, wherein the case selection unit distinguishes an update method of weight information stored in the order relation database according to a domain.
他のドメインに対して前記重み情報を小さくして更新することを特徴とする請求項2記載のランキング関数生成装置。 The case selection means updates the weight information for a specific domain out of the data stored in the order relation database,
3. The ranking function generating apparatus according to claim 2, wherein the weighting information is reduced and updated for other domains.
事例データ統合手段が、複数のドメイン事例データベースに格納された性質の異なる事例データを統合する第1ステップと、
順序関係生成手段が、前記第1ステップで統合した事例データに対して事例同士に順序関係を付与して順序関係データベースに保存する第2ステップと、
ランキング関数生成手段が、前記順序関係データベースに保存された順序関係をランキングするためのランキング関数を生成する第3ステップと、
事例選択手段が、前記順序関係データベースに保存された順序関係を順次更新し、前記第3ステップを繰り返して生成された各ランキング関数を関数格納データベースに保存する第4ステップと、
ランキング関数統合手段が、前記関数格納データベースの保存データを統合し、最終的なランキング関数を生成する第5ステップと、
を有することを特徴とするランキング関数生成方法。 A method for generating a ranking function for ranking a search result obtained by searching an electronic document group based on a search keyword,
A first step in which case data integration means integrates case data having different properties stored in a plurality of domain case databases;
A second step in which the order relation generating means assigns order relations to the case data integrated in the first step and stores them in the order relation database;
A ranking function generating means for generating a ranking function for ranking the order relation stored in the order relation database;
A fourth step in which the case selection means sequentially updates the order relation stored in the order relation database, and stores each ranking function generated by repeating the third step in the function storage database;
A ranking function integration means for integrating the stored data of the function storage database and generating a final ranking function;
A ranking function generation method characterized by comprising:
前記第2ステップは、前記ドメイン事例データベースに格納された同一クエリ・同一ドメインのレコードに対して、スコア差を有する事例同士の順序関係の重み情報をドメイン毎に前記順序関係データベースの保存し、
前記第3ステップは、前記順序関係データベースに保存された重み情報に応じてランキング関数を生成し、
前記第4ステップは、前記順序関係データベースに保存された重み情報の更新手法をドメインに応じて区別する
ことを特徴とする請求項4記載のランキング関数生成装置。 The first step adds a domain for each case to the case data of each domain case database containing the score of each electronic document and the feature value at the time of query search for each query, and saves it in the case database. ,
In the second step, for the records of the same query and the same domain stored in the domain case database, the weight information of the order relationship between cases having a score difference is stored in the order relationship database for each domain.
The third step generates a ranking function according to the weight information stored in the order relation database,
The ranking function generation device according to claim 4, wherein the fourth step distinguishes update methods of weight information stored in the order relation database according to domains.
他のドメインに対して前記重み情報を小さくして更新することを特徴とする請求項5記載のランキング関数生成方法。 In the fourth step, the weight information is increased and updated for a specific domain in the stored data of the order relation database,
The ranking function generation method according to claim 5, wherein the weight information is updated while being reduced with respect to another domain.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009208332A JP5211000B2 (en) | 2009-09-09 | 2009-09-09 | Ranking function generation device, ranking function generation method, ranking function generation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009208332A JP5211000B2 (en) | 2009-09-09 | 2009-09-09 | Ranking function generation device, ranking function generation method, ranking function generation program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011059947A true JP2011059947A (en) | 2011-03-24 |
JP5211000B2 JP5211000B2 (en) | 2013-06-12 |
Family
ID=43947507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009208332A Expired - Fee Related JP5211000B2 (en) | 2009-09-09 | 2009-09-09 | Ranking function generation device, ranking function generation method, ranking function generation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5211000B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012118659A (en) * | 2010-11-30 | 2012-06-21 | Nippon Telegr & Teleph Corp <Ntt> | Information search device, information search method and program |
JP2014228993A (en) * | 2013-05-21 | 2014-12-08 | 日本電信電話株式会社 | Information extraction method, device, and program |
JP2017535866A (en) * | 2014-11-21 | 2017-11-30 | マイクロソフト テクノロジー ライセンシング,エルエルシー | Offline evaluation of ranking functions |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009528627A (en) * | 2006-02-27 | 2009-08-06 | マイクロソフト コーポレーション | Training of ranking function using relevance of propagated documents |
-
2009
- 2009-09-09 JP JP2009208332A patent/JP5211000B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009528627A (en) * | 2006-02-27 | 2009-08-06 | マイクロソフト コーポレーション | Training of ranking function using relevance of propagated documents |
Non-Patent Citations (10)
Title |
---|
CSNG200501223011; 神嶌 敏弘: '順序中の欠損対象の補完' 第69回 知識ベースシステム研究会資料 (SIG-KBS-A405) , 20050225, 75-80ページ, 社団法人人工知能学会 * |
CSNG200701364011; 中田 康太: '質の異なる教師データを用いた分類手法' 第80回 知識ベースシステム研究会資料 (SIG-KBS-A703) , 20071225, 61-66ページ, 社団法人人工知能学会 * |
CSNG200900093006; 村田 眞哉: 'クリックログ解析による情報要求ベースの検索結果ランキング' 日本データベース学会論文誌 Vol.7 No.4, 20090327, 37-42ページ, 日本データベース学会 * |
CSNJ201010037164; 数原 良彦: 'ソーシャルブックマーク数を正解とした検索ランキングの学習' 2009年度人工知能学会全国大会(第23回)論文集 [CD-ROM] , 20090617, 1-4ページ, 社団法人人工知能学会 * |
CSNJ201010037180; 小阪 達也: '事例拡張を用いた半教師付き学習のデータストリームへの適用' 2009年度人工知能学会全国大会(第23回)論文集 [CD-ROM] , 20090617, 1-4ページ, 社団法人人工知能学会 * |
JPN6013006794; 中田 康太: '質の異なる教師データを用いた分類手法' 第80回 知識ベースシステム研究会資料 (SIG-KBS-A703) , 20071225, 61-66ページ, 社団法人人工知能学会 * |
JPN6013006796; 小阪 達也: '事例拡張を用いた半教師付き学習のデータストリームへの適用' 2009年度人工知能学会全国大会(第23回)論文集 [CD-ROM] , 20090617, 1-4ページ, 社団法人人工知能学会 * |
JPN6013006799; 神嶌 敏弘: '順序中の欠損対象の補完' 第69回 知識ベースシステム研究会資料 (SIG-KBS-A405) , 20050225, 75-80ページ, 社団法人人工知能学会 * |
JPN6013006802; 村田 眞哉: 'クリックログ解析による情報要求ベースの検索結果ランキング' 日本データベース学会論文誌 Vol.7 No.4, 20090327, 37-42ページ, 日本データベース学会 * |
JPN6013006805; 数原 良彦: 'ソーシャルブックマーク数を正解とした検索ランキングの学習' 2009年度人工知能学会全国大会(第23回)論文集 [CD-ROM] , 20090617, 1-4ページ, 社団法人人工知能学会 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012118659A (en) * | 2010-11-30 | 2012-06-21 | Nippon Telegr & Teleph Corp <Ntt> | Information search device, information search method and program |
JP2014228993A (en) * | 2013-05-21 | 2014-12-08 | 日本電信電話株式会社 | Information extraction method, device, and program |
JP2017535866A (en) * | 2014-11-21 | 2017-11-30 | マイクロソフト テクノロジー ライセンシング,エルエルシー | Offline evaluation of ranking functions |
US11636120B2 (en) | 2014-11-21 | 2023-04-25 | Microsoft Technology Licensing, Llc | Offline evaluation of ranking functions |
Also Published As
Publication number | Publication date |
---|---|
JP5211000B2 (en) | 2013-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101557294B1 (en) | Search results ranking using editing distance and document information | |
US9201931B2 (en) | Method for obtaining search suggestions from fuzzy score matching and population frequencies | |
US7480667B2 (en) | System and method for using anchor text as training data for classifier-based search systems | |
US8285702B2 (en) | Content analysis simulator for improving site findability in information retrieval systems | |
CN106383836B (en) | Attributing actionable attributes to data describing an identity of an individual | |
US8335787B2 (en) | Topic word generation method and system | |
CN102591985B (en) | The Query Reconstruction associated with search box | |
US20090299978A1 (en) | Systems and methods for keyword and dynamic url search engine optimization | |
CN1573923A (en) | System and method for user modeling to enhance named entity recognition | |
CN1295705A (en) | Information retrieval and speech recognition based on language models | |
US20070162408A1 (en) | Content Object Indexing Using Domain Knowledge | |
KR101624909B1 (en) | Method of extracting related keyword based on nomalized keword weight | |
Sisodia et al. | Fast prediction of web user browsing behaviours using most interesting patterns | |
Heck et al. | Horizontal traceability for just‐in‐time requirements: the case for open source feature requests | |
JP6079270B2 (en) | Information provision device | |
JP5211000B2 (en) | Ranking function generation device, ranking function generation method, ranking function generation program | |
JP4912384B2 (en) | Document search device, document search method, and document search program | |
WO2024078141A1 (en) | Subject-based document retrieval prediction method | |
JP2011100191A (en) | Device, method, and program for retrieving document | |
JP2010055164A (en) | Sentence retrieval device, sentence retrieval method, sentence retrieval program and its storage medium | |
JP2009116593A (en) | Word vector generation device, word vector generation method, program, and recording medium with program recorded therein | |
JP5416552B2 (en) | Ranking function generation device, ranking function generation method, ranking function generation program | |
CN109614542B (en) | Public number recommendation method, device, computer equipment and storage medium | |
JP6916136B2 (en) | Search support device, search support method, and search support program | |
JP2007199876A (en) | Question answering system, question answering processing method, and question answering program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110927 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130207 |
|
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: 20130219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130225 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160301 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5211000 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |