データセットでセマンティック検索を実行する場所で解決しようとしている問題があります。つまり、ドメイン固有のデータがあります(例:自動車について話す文章)。
私たちのデータは単なる文の集まりであり、私たちが欲しいのはフレーズを与えて次のような文を取り戻すことです:
- そのフレーズに似ています
- フレーズに似た文の一部がある
- 文脈的に類似した意味を持つ文
「Buying Experience」というフレーズを検索した場合の例を挙げてみましょう。次のような文を取得する必要があります。
- 車の購入に署名して購入するのに30分もかからないとは思っていませんでした。
気に入った車を見つけました。購入プロセスは
簡単で簡単でしたカーショッピングに行くのは絶対に嫌いだったけど、今日はよかった
私は強引な単語検索ではなく、文脈の類似性を探しているという事実を強調したいと思います。
文が別の単語を使用している場合は、それを見つけることもできるはずです。
私たちがすでに試したこと:
Open Semantic Searchここで直面した問題は、私たちが持っているデータからオントロジーを生成すること、またはそのために、関心のあるさまざまなドメインから利用可能なオントロジーを検索することです。
Elastic Search(BM25 + Vectors(tf-idf))、これを試してみましたが、数文しかありませんでしたが、精度はそれほど高くありませんでした。精度も悪かったです。人間が精選したデータセットに対して試したところ、文章の約10%しか取得できませんでした。
私たちは、センテンストランスフォーマーで一度言及されたようなさまざまな埋め込みを試し、例も試して、人間が精選したセットに対して評価しようとしましたが、これも非常に精度が低かったです。
ELMOを試しました。これは優れていましたが、予想よりも精度が低く、コサイン値を決定するための認知的負荷があり、それを下回ると文を考慮すべきではありません。これはポイント3にも当てはまります。
任意の助けをいただければ幸いです。事前に助けてくれてありがとう