今年もオンラインでBerlin Buzzwordsに参加した

Posted by johtani on Wednesday, June 15, 2022

目次

今年もBerlin Buzzwordsにオンライン出張してました。 今年はハイブリッドな開催だったようで、現地で再開している人もいるようでした。 ブースもあったみたいです。ちなみに、現地で参加する人はマスク必須のようでした(Health & Safetyというページが用意されていました)。 昨年オンラインだったMICESは現地のみでの開催みたいで見ることはできなかったです(録画公開されないかなぁ)。

さて、いくつか見たセッションで面白かったものがあったので簡単にメモを。 すでにセッションのビデオがYouTubeで公開されているので、興味のある方は見てみてください。

面白かったセッション

The future of Lucene’s MMapDirectory: Why use it and what’s coming with Java 19 and later?

毎年恒例になってる気も? 前半は昨年も話をした内容で、後半はJava 19がリリースされたら、Previewという形でフラグを立てて使えるようになるようです。 使えるようにするから、テストしてみて!という感じで終わっていますw

Scaling an online search engine to thousands of physical stores

数千の実店舗の商品をオンラインで検索できるようにしつつ、オンラインのマーケットプレイスのような検索も一緒にできるようにしたというお話でした。 インデックスの構成をどう工夫したのか?とかどういうクラスター構成にして、どんなことをモニタリングしてるよ?というお話です。 実際の店舗がどんなものかなどは出てこなかったので、少しイメージは沸きにくかったのですが、どんなことを考えながらインデックスの構成とか考慮したよという話はおもしろかったです。 実際に検索したときに、実店舗のデータがどんな感じで結果として表示されたりするのか?といった点はわからなかったので、そのあたりの話をもうちょっと聞いてみたかったなぁ。

Offline Ranking Validation - Predicting A/B Test Results

otto.deというECサイトでのランキングをどうやって改善していくか?という話。 現在はマニュアルなチューニングをコンテキストごとにやっているけど、リクエスト量とかデータとかが増えてきてて、このままマニュアルで改善していくのも大変なので、 モデルベースのランキングを開発できないか?というのをはじめていますよと。 そのために、これまでのデータから、A/Bテストの結果を予測できるモデルが作れないか?というのをやっていますという話。 いくつかわからない単語も出てきたので、誰か詳しい人教えて!

AI-powered Semantic Search; A story of broken promises?

Vespaの開発にかかわってる方の、Semantic Searchに関する話。 Semantic Searchが流行り始めていて、どうやればできるのか?という話が出てきています。 けど、どういうものでどういう点に気を付けたほうがいい?という話でした。 LtRってこんなもの、そのあとに出てきたLLM(Large Language Model)でどうやって検索の改善に使えるの?というのが分かりやすく説明されていました。 それらの説明の後、BEIRという論文を紹介しつつ、LLMを使うときの注意点の話がありました。

BERTとかをちょっと勉強してたのもあり、なんとなくそうだよなぁと思っていた結論と同じ結論が出てきたので面白いと感じました。 BEIRの論文は時間を見つけて読んでみないとな。

Hybrid search > sum of its parts?

こちらもVespaの人の話。 先ほどのSemantic Searchの話では、Semantic Searchがどんなものか?という話でした。 が、それだけで検索ができるわけでもないので、キーワードサーチとSemantic Searchの両方をうまく活用するには?というのがこのセッションでした。 最終的にはVespaを使うとうまくハイブリッドできるよという話ですが、考え方は参考になるかなと。 Vespaも触ってみたいなぁ。

The life of a search engine administrator

検索システムの管理者ってどんなことやるの?それにはどんなことができるツールがあるといいの?という話です。 まぁ、ツールについてはこの会社の人たちのツールの宣伝なのですが、検索システムを作って育てていくのにどんなことを考えたりするのか?という参考になるかなぁと。

Should we stop using distance in our location-based data recommendation models?

TravelTimeという会社を立ち上げた人の話。 位置に関する情報って重要だし、検索するときに利用しますよね?例えば、ホテル決めたりとか、仕事探したりするときに。 ということで、位置情報を検索エンジンで利用する方法(Bounding Box、ポリゴン、距離)をまず紹介して、どんなユースケースで使えるかという話があります。 また、それとは別に検索速度(いかに検索を速く返すか)も重要だという話があります(ウォルマートはページロード時間を1秒早くしてコンバージョンが2%あがったとか)。 で、実際に検索結果に距離とかでるけど、実際に知りたいのはどのくらいの時間で行けるのか?という話だったりしませんか?と。 公共交通機関を使ったりする場合に、実際に45分で移動できる距離というのは半径5マイルとかできまるものではないのに、単純に位置情報を利用した距離だけでソートしていいの?という問いかけから、 その辺を考慮した検索ができるAPIを開発しているよ、検索速度もはやいよというお話でした。 残念ながら具体的にどうやって作っているのか?というのはなかったですが、観点がおもしろかったです。

Word2Vec model to generate synonyms on the fly in Apache Lucene

Word2Vecのモデルを使った、Apache LuceneのSynonym Filterを開発中だよという話 DeepLearning4Jを使ってみたが、遅くて使えなかったんだけど、最近Luceneに入ったkNNを使うことでそれなりの速度で使えそうなものができるかもよ?って感じでした。 モデル学習用のツールも作ってて、イタリア語のWikipediaで学習したものでちょっと動かしたらそれっぽい感じになってるという話でした。 まだ途中でいくつかやりたいことがあるという話で、実用はまだ先のようでした。例えば、1単語のSynonymにしか対応してないとか、モデルをインメモリでしか動かせないとか。

QAでも出たのですが、Word2Vecだと対義語も類似していると判定されてしまうと思うので、その辺がどうなっているのかなぁ?という疑問があります。 ルールベースの類義語ではないので、調整するのはどうやるのかなぁ、学習用のコーパスをいい感じにするとかなのかな?とか、気になるところです。

NrtSearch: Yelp’s fast, scalable, and cost-effective open source search engine

YelpがLuceneベースで開発をしているNrtSearchというOSSの話です。 Elasticsearchを使っていたんだけど、どういった点が問題点になってどういうモチベーションでNrtSearchを開発したのか?を説明しています。 アーキテクチャがどんなもので、実際に動かしてみてどんな利点があって、どんな点が問題として出てきているか、将来どんなことをやろうとしているかがわかります。 QAでもいろんな質問が出ていて面白いです。

まとめ

ということで、簡単でしたがセッションの感想でした。 Neural/Semantic Searchというのがセッションのタイトルなどに入っているのが多くなってるなぁという感想です(ちょっとやってみたい気はしてるんだよなぁ)。 すでにYouTubeに動画が公開されているので興味があるセッションを見つけてみてください。 Berlin Buzzwordsの次の日に開催されたMICESも観てみたかったですが、オンラインでも参加できる形式で海外のカンファレンスが開催されるのはとても助かりますね(ヨーロッパだと時差もそれほど大変じゃないし)。 けど、落ち着いたらまたオフラインで参加してみたいなぁ。


comments powered by Disqus

See Also by Hugo


Related by prelims-cli