オンラインアルゴリズムとは、データが逐次的に入ってきた時にも計算できるアルゴリズムのことである。 データを全て見た上で計算するバッチ(オフライン)アルゴリズムと対比してこう呼ばれる。 オンラインアルゴリズムは、すべてのデータをメモリ上に保持しておくのが厳しいような大規模データを扱う場合などによく使われる。機械学習の文脈でよく見かけるかもしれない。機械学習の文脈だと割と理論的に難しい物が多いが、平均、分散、サンプリングなどは簡単なシステムを作るときにも割とよく使うので、データが逐次的に来ても処理が書けるようになっておくと幸せになれることもあるはず。 今回は、平均値の逐次計算についてだけやり方を書いておく。