こんにちは、検索チームのよこやまです。
昨年9月にアドバイザー開発チームから新生検索チームの所属となり、右も左もわからないまま半年+αが過ぎました。
検索に強いチームメンバーに囲まれ、検索何もわからない人間がチームの一員となるべくこの半年+αで取り組んだことをご紹介できればと思います。
INPUT
主に技術書です。
Elasticsearch
ビザスクではElasticsearchを使用しており、既に動いている検索システムの運用に参画するためElasticsearchについて学ぶことが急務でした。
本で取り上げているElasticsearchのバージョンは少々古いことが多いですが、それでも十分勉強になります。
最初は「Elasticsearch実践ガイド」で概要を掴みつつ「Elasticsearch in Action」の気になるところを読み、後は公式ドキュメントや公式ブログで詳細を把握しました。 ManningのeBookは条件付きで無料で読めたり、章単位で購入できるのが良いですね。
情報検索
Elasticsearchの使い方を知ることも重要ですが、効果的に設定したり評価するためには、その背後にある情報検索の基礎知識を知ることも重要です。
私は会社にあった「情報検索の基礎」を最初に手に取りましたが、今なら「情報検索 :検索エンジンの実装と評価」を手にするのも良いかと思います。後者の本は値段と厚さにビックリしました…
「Relevant Search」は検索システムの評価改善に向けて読みました。全体的にElasticsearchの設定やクエリに関する話が多かったのですが、組織においてどの様に検索を改善していくかにも触れられていて興味深かったです。
数学
情報検索を学ぶに当たり確率的情報検索や機械学習など、何かと確率統計・線形代数に触れるため一通り復習しました。
「プログラミングのための」とありますがプログラミング目的じゃなくても良い本でした。章ごとにレベルが振られており、自分が目指すレベルに応じて読むべき場所が明示されていて親切です。
機械学習
自分が業務で機械学習を使うことはまだないのですが、チームメンバーが扱っていたり、将来的に自分も関わる可能性があるため、軽くですが触れておきました。
実践
問い合わせに積極的に応対
検索チームが誕生した時期は、ビザスクの社内向け検索機能の刷新プロジェクトが動いていたこともあり、社内の検索ユーザーから多くの問い合わせがありました。
問い合わせの中には「この検索条件のときにこのユーザーがヒットしない」「このユーザーが上位に来てほしい」など、検索ロジックに関するものも多くありました。
そういった問い合わせに対し、調査から対策の実施まで積極的に請け負うことで、発行されている検索クエリやスコア計算ロジックの現状把握に繋がりました。
新規検索機能の開発に最初から参画
先述した検索機能の刷新プロジェクト完了後、新たな社内向け検索機能に立ち上げから参画しました。
検索機能の要件の詰め方・仕様の具体化・実装などはもちろん、自社の検索ユーザーがどのような業務フローで検索を利用しており、どのような検索を望んでいるかの把握に繋がりました。
実際にユーザーの話を伺っていると、ECサイトの検索などとは異なる需要が見えてきて非常におもしろいです。
(おまけ)検索エンジンを自作する
本で学んだ情報検索の基礎部分を定着させるため、簡単な検索エンジンを自作しました。実際に作ってみると「あの機能はどう実装できるかな」と考えることが多く楽しいです。
おわりに
簡単ではありますがこの半年私が取り組んだことについてご紹介させていただきました。今後も検索チームの一員としてビザスクの検索改善に取り組んで行きたいと思います!