Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Elasticsearchにおけるベクトル検索(第57回Elasticsearch勉強会)

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.
Avatar for 樋口慎 樋口慎
December 18, 2023

 Elasticsearchにおけるベクトル検索(第57回Elasticsearch勉強会)

第57回 Elasticsearch勉強会(LT大会)の発表資料です。

Avatar for 樋口慎

樋口慎

December 18, 2023
Tweet

More Decks by 樋口慎

Other Decks in Technology

Transcript

  1. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 第57回Elasticsearch勉強会

    Elasticsearchにおけるベクトル検索 Acroquest Technology 株式会社 Elastic Certified Engineer 樋口 慎 @shin0higuchi 1
  2. 自己紹介 ⚫ 名前:樋口 慎 ⚫ 所属:Acroquest Technology株式会社 ⚫ 業務:Elasticコンサルティング全般、データ分析、システム開発 ⚫

    資格/執筆: 世界初「Elastic Certification」3種取得 Azure Solutions Architect Elasticsearch NEXT STEP 執筆
  3. ベクトル化することで、自然言語に依らず検索が可能 Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    5 画像1: [0.8, 0.2, 0.3, ....] 画像2: [0.0, 0.5, 0.2, ....] 画像3: [0.3, 0.4, 0.1, ....] 画像4: [0.4, 0.6, 0.2, ....] ベクトル化
  4. 文書のベクトル検索 Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    6 ▪Elasticsearchの通常の検索 検索クエリを 形態素解析 AWS上でElasticsearchを使うには? AWS/上/で/Elasticsearch/ を/使う/に/は/? 検索対象ドキュメント群 検索 「AWS」「Elasticsearch」 といったキーワードを含むド キュメントのみがヒットする ▪セマンティック検索 機械学習モデルで ベクトル化(embedding) AWS上でElasticsearchを使うには? [0.8, 0.2, 0.3, ....] 検索対象ドキュメント群 検索 意味的に近い ドキュメントがヒットする ※検索ドキュメント群が事前に ベクトル化されている必要がある
  5. Elasticsearchで学習済みモデルを利用するには Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    8 Kibana Elasticsearch 学習済みモデル ② Elandを利用して、 学習済みモデルを Elasticsearchに登録する ① 学習済みモデルを用意する (Hugging Face等を利用す る場合、適切なモデルを選 ぶのみ) ③ ドキュメント登録時/検 索時に登録済みモデルを 呼び出して利用する (ベクトル化)
  6. Elasticsearchでのベクトル検索 Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    10 1. HNSWと呼ばれるアルゴリズムによって、 大量のベクトルが対象でも高速な類似検索が可能 ※script scoreクエリによるブルートフォースkNNも利用可能だが 高レイテンシーのため、厳密性を求めない限りは利用機会が少ないと思われる 2. バージョンアップとともに、利用可能なベクトル次元数も増加 (ver.8.11では4096次元のベクトルまで登録可能) 3. 詳細なクエリ記法はリファレンス参照 k-nearest neighbor (kNN) search | Elasticsearch Guide [8.11] | Elastic を参照
  7. 余談ですが.... Copyright © Acroquest Technology Co., Ltd. All rights reserved.

    13 • 8.11で sparse_vector型が復活しました(実体はrank_feature型)