はじめに 2つのシステムの性能やデザインを比較したいときには、A/Bテストを行うことがあります。UIの変更など、比較すべきシステムが多くないような場合で、かつ、たくさんのページビューがあるようなサービスを運用している場合にはA/Bテストでも良いかも知れません。しかし、比較すべきシステムが複数ある場合や、あまりページビューがない場合、A/Bテストで有意な結果を得るためには長い時間がかかってしまうことが知られています。 そこで注目を集めているのが、近年提案されたインターリービング(Interleaving(日:交互配置))という手法です。検索や推薦システム等のランキングを行うシステムにのみ適用が可能ですが、実験的にA/Bテストよりも10~100倍効率的であるということが知られています。この記事では最近の論文によって報告されているインターリービングの性能について、また、各種インターリービング手法
前置き この記事は Retty Advent Calendar 23日目です。 昨日は@kazushikawamuraのReact & Firebaseで簡単なChatアプリを作ってみたでした。 Elasticsearchとは 今更なにを。。。と思う方がほとんどだと思います。 釈迦に説法で非常に恐縮ですが、5.1.1も出たところですし一回お浚いということで。。。 Elasticsearchは、Elastic社が展開する強力な検索エンジン?です。 正直なんて定義できるものかよく分からないですが、全文検索でよく使う、あとデータ分析にめっちゃ強いというところでいろんなところで重宝してます。 この前行ってたelastic{on}では、ある発表でElasticsearchのいいところを 「貯める、検索する、集計する」が一つのプロダクトで出来る というのをあげていました。 強力なビジュアライズツールK
はてなアプリケーションエンジニアの id:takuya-a です。 この記事では、Microsoft の検索エンジン Bing で採用された BitFunnel アルゴリズムを紹介します。 昨年のエンジニアアドベントカレンダーでは、文字列検索のアルゴリズム全般について紹介しました(文字列アルゴリズムの学びかた - Hatena Developer Blog)。今年はそのなかでも、インデックス(索引)を使った全文検索アルゴリズムについてのお話になります。 この記事の前半は全文検索の入門にもなっていますので、検索技術になじみがない方にも楽しんでいただけるのではないでしょうか。 逆に、「そんなのもう知ってるよ!」という方は、本題である「BitFunnel アルゴリズムの詳細」から目を通していただければと思います。 この記事は、はてなエンジニア Advent Calendar 2017の21日目の
はじめに タイトルのとおり、この記事ではPythonによる非再帰型Segment Treeの実装を紹介したいと思います。 前提知識を「ほぼ」1 必要としないようにSegment Treeの説明から入るので、もう知ってるという方は読み飛ばしてください。→非再帰型Segment Treeの実装 Segment Treeとは 通称セグ木、セグメント木などと呼ばれているデータ構造で、長さ $N$ の配列{$a_i$}$_{i=0}^{N-1}$に対して、モノイド $(S,•)$ に関する次の2つの操作がどちらも時間計算量が $O(logN)$ で行えます。 $update(i, x)$: $a_i$ を $x$ に変更する $query(l, r)$: 半開区間 $[l,r)$ に対して $a_l•a_{l+1}•$…$•a_{r-1}$ を返す モノイドとして、一般的な足し算を考えると、$q
The Git source-code management system is famously built on the SHA‑1 hashing algorithm, which has become an increasingly weak foundation over the years. SHA‑1 is now considered to be broken and, despite the fact that it does not yet seem to be so broken that it could be used to compromise Git repositories, users are increasingly worried about its security. The good news is that work on moving Git
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く