12章訓練データセットの生成

ここまでの作業によって、Wikipediaの記事検索システムを構築し、Elasticsearchのデフォルトスコアによるランキングが行えるようになりました。ここからは、ランキング精度改善のために、ランキング学習によって検索ランキングモデルを構築し、Elasticsearchにデプロイしてみます。

Elasticsearch上で検索ランキングモデルによるランキングを行うために、本ハンズオンではElasticsearch Learning to Rankプラグイン(以下、LTRプラグイン)を利用します。LTRプラグインを利用してランキングを行うには、以下の準備が必要です。

  • 検索ランキングモデルで利用する特徴量セット(LTRプラグインではfeaturesetと呼ぶ)
  • 検索ランキングモデル(RankLibやXGBoostといった機械学習ライブラリによって得られるモデル形式に対応)

本章では、検索ランキングモデルで利用する特徴量を選定し、featuresetをElasticsearchにデプロイします。次に、Elasticsearchを利用して特徴量データを収集し、検索ランキングモデルを構築するための訓練データセットを得ます。

12.1 特徴量の選定

検索ランキングモデルで利用する特徴量は、Elasticsearchのランキング処理内にて取得・計算できる必要があります。LTRプラグインでは、Elasticsearchに格納されているフィールドの値や、検索キーワードと文書の関連度をあらわす値(tf-idfやBM25など)、単語頻度(tf)、文書頻度(df)やその逆数(idf)の統計値などが特徴量として利用できます。本ハンズオンでは以下の特徴量を利用することにします。 ...

Get 機械学習による検索ランキング改善ガイド ―技術解説とハンズオンで学ぶ機械学習ランキングモデルの導入と改善 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.