タグ

ブックマーク / ny23.hatenadiary.org (3)

  • 大規模データで単語の数を数える - ny23の日記

    大規模データから one-pass で item(n-gram など)の頻度を数える手法に関するメモ.ここ数年,毎年のように超大規模な n-gram の統計情報を空間/時間効率良く利用するための手法が提案されている.最近だと, Storing the Web in Memory: Space Efficient Language Models with Constant Time Retrieval (EMNLP 2010) とか.この論文では,最小完全ハッシュ関数や power-law を考慮した頻度表現の圧縮など,細かい技術を丁寧に組み上げており,これぐらい工夫が細かくなってくるとlog-frequency Bloom filter (ACL 2007) ぐらいからから始まった n-gram 頻度情報の圧縮の研究もそろそろ収束したかという印象(ちょうど論文を読む直前に,この論文の7節の

    大規模データで単語の数を数える - ny23の日記
  • 機械学習/テキスト処理 × Lua (LuaJIT) - ny23の日記

    Python で書いた Passive Aggressive-I が C++ 実装に比べて50倍遅かったので,(スクリプト言語でも)もう少しぐらい速くならないかと思って,スクリプト言語で最速の処理系 (LuaJIT) を持つ Lua で Passive Aggressive-I を実装してみることにした. Lua はアプリケーションへの組み込みを意図し,高速な動作,ポータビリティ,拡張の容易さなどを重視して設計されたコンパクトな汎用スクリプト言語.今月の TIOBE Programming Community Index では Ruby の一つ下の12位にランキングされている*1.これは,iPhone アプリの開発者による利用が増えているというのが大きい*2と思うが,プログラム言語の設計者たちへのインタビューを纏めた Masterminds of Programming(邦訳: 言語設計者

    機械学習/テキスト処理 × Lua (LuaJIT) - ny23の日記
  • オープンソースとアルゴリズムの特許 - ny23の日記

    GPL で公開していた構文解析ライブラリで実装していたアルゴリズム(の一つ)について,特許が出ているという指摘を受けたので,GPL で公開するのは不適切だと判断して,当該アルゴリズムの実装を取り除いた.このアルゴリズムは,同じくオープンソースな解析器 (LGPL/BSD) でも実装され公開されていたので,すっかり ok だと油断していた.確かに企業研究者の提案手法なので,特許が取られている可能性は頭の隅にはあったのだけど,それにつけても非常に残念だ.今回のアルゴリズムは,かんたん特許検索で提案者名を入れてもそれこそ「かんたんに」出てくるので,自分自身の過失だろう.が,それで済ませていいのだろうか.[最後にオチあり] 以前,Bayesian Setsの特許について - のんびり読書日記 を読んだ時も思ったけど,アルゴリズム(あるいはソフトウェア)の特許というのは,オープンソース開発者にとって

    オープンソースとアルゴリズムの特許 - ny23の日記
  • 1