タグ

ブックマーク / d.hatena.ne.jp/nokuno (5)

  • 【Python】データのサンプリングを実装する - nokunoの日記

    この前のエントリで、Hadoopを使って統計処理を行なう際に、データのサンプリングを行って高速化する方法について検討しました。 Hadoopを使ってサンプリングを行なうには - nokunoの日記 今回は、並列化とかややこしいことは考えずにPythonでデータのサンプリングを行なう方法を検証してみました。 重複を許すサンプリング重複を許すサンプリングの実装は簡単です。配列のサイズの中から必要な数だけランダムにインデックスをサンプリングすれば良いのです。 #!/usr/bin/env python import random def sampling(a, n): result = [] for i in range(n): index = random.randint(0,len(a)-1) result.append(a[index]) return result if __name_

  • 自然言語処理・機械学習関係の国際会議 - nokunoの日記

    以前論文の探し方のまとめのまとめを書いたのですが、やっぱり自分でまとめないと興味のある学会とかが分かりづらいですね…と、WWW2011の予稿集を見つけて思ったのでした。リンク先は学会ページか今年の会議のページです。 自然言語処理 ACL ACL2011NAACLEMNLP2011 機械学習 NIPS NIPS2011ICML2011 データマイニング SIGKDD KDD2011SIGMOD SIGMOD2011 Web WWW2011SIGIR SIGIR2011 その他 VLDB VLDB2011この辺りの学会で論文読み会とかできたらいいなあ。ACMのSIGなんちゃらは予稿集を公開していない(個人だとACM Portalで有料で見るしかない)ことも多いですが…。他にオススメあったら教えてください。特に実装系ぜんぜんわかりません。ツイートする

    memigu
    memigu 2011/05/03
  • TwitterにおけるHadoopとLuceneを利用した大規模データ解析について - nokunoの日記

    Twitterについては先日の記事でフロントエンドBlenderを紹介しましたが、バックエンドやデータ解析のシステムにも興味があります。ちょうどData-Intensive Text Processing with MapReduceで有名な@lintool先生の新しい論文が公開されていたので読んでみました。Full-Text Indexing for Optimizing Selection Operations in Large-Scale Data Analytics(pdf)ACMのMapReduce'11というワークショップで発表された内容のようです。この論文を読んで初めて知ったのですが、Lin先生はサバティカル休暇(大学教授が長期の休みを取れる制度)でTwitterに来ており、データ解析チームで働いているそうです。この論文もTwitterエンジニアの@squarecogさんと

    memigu
    memigu 2011/04/22
  • nokunoの日記

    引き続き東大の「創造情報学連携講義VII」より賀沢さんの課題1でもある、IBMモデル1の実装を行いました。創造情報学連携講座IBMモデル1のEMアルゴリズムを実装してサンプルデータで結果を確認せよという問題です。 #!/usr/bin/env python from collections import defaultdict def train(corpus): pair = defaultdict(float) for english, forein in corpus: for e in english.split(" "): for f in forein.split(" "): pair[(e,f)] += 1. print 'pair:', pair t = defaultdict(float) for e,f in pair.keys(): t[(e,f)] = 0.25 f

    memigu
    memigu 2011/04/20
  • 【これはすごい】Twitter検索を3倍高速化した記事の翻訳 - nokunoの日記

    これはすごい! というわけでTwitter検索を3倍高速化したという記事を翻訳してみました。Twitter Engineering: Twitter Search is Now 3x Faster2010年春。Twitterの検索チームは、我々の増え続けるトラフィックに対応し、エンドユーザにとっての遅延を減らし、我々のサービスの可用性を向上させ、新しい検索の機能を素早く開発できるようにするため、検索エンジンを書きなおす作業を始めた。 その努力の一部として、我々は新しいリアルタイム検索をリリースし、検索のバックエンドをMySQLからLuceneのリアルタイム版に変更した。そして先週、我々はRuby-on-Railsに取って代わるフロントエンドをローンチした。我々がBlenderと呼ぶJavaサーバーである。我々はこの変更によって検索のレイテンシが3分の1になり、検索機能の開発を促進できるよう

    memigu
    memigu 2011/04/20
  • 1