タグ

algorithmとprogrammingに関するbayashi_netのブックマーク (24)

  • Webstemmer のしくみ

    back [English] 基的な原理 レイアウト分析ツール analyze.py 文を抽出する extract.py パターンファイルの構造 おわりに 基的な原理 Webstemmer では、以下のような仮定をもとにして Web ページを分析しています。 すべての記事には共通した (たかだか数種類の) レイアウトが使われている。 各ページにはメインとなる文章がひとつ含まれている。 (従って、この原理は日記や掲示板などのサイトには使えません) 記事の文章は毎日変わっても、そのレイアウトは変わらない。 バナー広告やナビゲーションの HTML タグは同一レイアウトのページで不変。 Webstemmer はこの仮定をもとに、 あるニュースサイトの同一レイアウトをもつページをまとめ、 それらのページ中で「変化していない部分」をさがします。 バナーやナビゲーション用のリンクなどはレイアウトが

  • GoogleNewsのレコメンドの中身 - UMEko Branding

    先日、全体ゼミで発表したときの内容ですが、ここにまとめときます。。GoogleNewsのレコメンドの中身を追った論文の要約です。少し前の全体ゼミで用いた資料です。ソース:Abhinandan Das,Mayur Datar,Ashutosh Garg,Shyam Rajaram,"Google News Personalization: Scalable OnlineCollaborative Filtering",WWW2007不勉強な個所が多々ありますので、誤っている箇所等ありましたら、是非ご指摘ください。 個人的には、最近のモデルベースの手法の勉強・おさらいという意味で用いているので、GoogleNews独自の拡張なり実装の部分の内容が省かれている場合があります。また、データ構造やMapReduceを用いた計算の仕組みの部分は、ここでは省略しています。。一応、 全体像 ・LSH(Lo

  • 30分で理解する自然言語処理 まとめ - プログラマでありたい

    今まで何か日語処理のエントリーを書いてきました。後で振り返り易いように、ここらで一覧にまとめておきます。 wikipediaのダウンロード&データベースにインポート コーパスとして、wikipediaの存在はありがたいです。まずはここから始めるのが良いですね。併せて紹介しているxml2sqlも秀逸です。 特徴語抽出のあれこれ あれこれと言いつつ形態素解析Yahoo APIを使った特徴語抽出のみを紹介しています。手軽に出来るのが魅力です。 ベイジアンフィルター Perlで作りたい人に教えてあげたいちょっとしたこと Algorithm::NaiveBayesの使い方を簡単なサンプルで紹介いたしました。割と好評です。ベイジアンフィルターの人気の高さを垣間みれますね。 TermExtract Perlで出来る特徴語抽出 TermExtractという専門語抽出モジュールの紹介です。TermEx

    30分で理解する自然言語処理 まとめ - プログラマでありたい
  • 高速かつ省メモリで文字列を扱うデータ構造「wavelet tree」

    はじめに 大規模なデータを扱うアプリケーションでは、速度とともに作業領域量も大きな問題となります。作業領域がメインメモリに収まらない場合、スワッピングが発生し、大幅な速度低下につながります。そのため近年、データ構造は高速なだけでなく、作業領域量が小さいことも求められています。今回紹介するのは2003年に提案されたデータ構造、wavelet tree(以下「WT」と表記)です。WTは圧縮索引やSuccinct Data Structureなど、データをコンパクトに表現する際に重要なデータ構造です。WTは文字列T[0...n-1]が与えられた時、次の2つの操作を定数時間でサポートします。 rank(p, c)――T[0...p]中のcの出現回数を返す select(i, c)――(i+1)番目のcの位置を返す WTの作業領域量は、文字列をそのまま保存した時の約2倍程度です。 対象読者 C++

    高速かつ省メモリで文字列を扱うデータ構造「wavelet tree」