2009-03-01から1ヶ月間の記事一覧

Google N-gram の検索システム(3/31 に間に合った)

Google N-gram の検索システムを Google Code にて公開しました. ssgnc - Google Code http://code.google.com/p/ssgnc/ 「そもそも Google N-gram を持っている人がどれだけいるの?」ということを真面目に考えると悲しくなるのでやめておきましょう.など…

Google n-gram 検索システムの動作確認中

インデックスを構築できるようになってから,細かい拡張・修正をいくつか施したので,再度インデックスの構築をテストしています.明朝には片付いている予定で,無事に完了していれば,どこかに公開しようと思っています.Google Code でいいかな….…そうい…

ウェブページの取得用 Perl を変更

Yahoo! Web API で取得した検索結果に含まれる URL を用いているので,ウェブページを取得しようとしてエラーやリダイレクトを受け取った場合,ホスト自体へのアクセス禁止期間を設けて怪しい URL をやりすごすように変更を加えました.# URL の取得からウェ…

ウェブコーパスからの HTML 抽出と標準フォーマットへの変換

すべてを一度に処理するのはどうせ無理と判断して,少しだけファイルを入れてみたところ,無事に変換できることが分かりました.ただし,形態素解析や係り受け解析をしていない状態の速度がコレだとすると,100 万文書を超えるような大量のウェブコーパスを…

Google n-gram 検索システム

使えるレベルになったような気がします.インデックス自体には特定の 1-gram を含む n-gram を頻度降順に返す機能しかありませんが,それでも役に立つと思います. できることの例 「りんご」と「みかん」が出現する n-gram の列挙 「りんご」と「みかん」が…

ウェブコーパスからの HTML 抽出

MySQL からデータを取り出すだけなので,かなり簡単です.でも,置き場所を確保するのを忘れていました.仕方がないので,一部だけ取り出して,TSUBAKI の標準フォーマット変換ツールを試してみようと思います.

Darts-clone の追加機能をテスト

とりあえず,実装してみたところ,すんなりと動きました.評価をするのが面倒です….

Google n-gram 検索システム

インデックス構築用のプログラムは修正完了しました.途中で力尽きたので,手抜きになっている部分もありますが,以前と比べればマシになっています.ただし,動作環境は 64-bit な Linux に限定してしまいました.検索用のクラスも作成できたので,CGI 用の…

今週中に片付けたいこと

案の定,先週の「来週までに片付けたいこと」が未完成です.

Mac mini をいじる暇がない

折角 Mac mini(初 Mac)を手に入れたというのに,まだ一度電源を入れただけという状態で放置しています.Xcode をインストールして開発に使おうと計画していたものの,少なくとも来週まではお預けっぽいです. 来週までに片付けたいこと Google n-gram 検索…

実験結果のメモ

日本語版 Google n-gram の 3-gram(頻度抜き)を使ってダブル配列を構築してみました. 入力:3 億 9 千万件の単語 3-gram(8GB) 出力:要素数 3 億 2 千万のダブル配列(1.3GB) 構築時間:1 時間 30 分 使い道がありそうな,なさそうな….追記:3-gram …

システム移行

なんとか無事にウェブコーパス格納用のシステムの移行が完了しました.MySQL のフリーズ問題は解決したものの,いろいろと問題が起きて難儀しました. 大きなファイル(500GB)を cp しようしたら,終了間際でフリーズ 試しにもう一度 cp してみたところ,問…

国際会議がたくさん

研究室の研究内容と関連のありそうな国際会議を探してみたら,来月と再来月に〆切をむかえるのが大量に見つかりました.ただし,今年はボスが国際会議の Chair になっているらしく,それについては強制参加になるかもしれません. できれば他の場所に行きた…

SATA は 6Gbps で足りるのかな

次世代 SATA が 6Gbps になると,すぐに頭打ちになってしまいそうな気がします.何しろ,SSD が SATA の限界に到達しそうな状態ですから….それに,PCI Express x8 を用いる製品が出てくるという話を目にした記憶があります. SeagateとAMD、6Gbps SATAのHDD…

MySQL をフリーズさせないために

250 records/sec くらいの速度に抑えてみたところ,レコード数が 1500 万件を超えても正常に動作しています.# 正確には,テーブルをインデックス用とデータ用の 2 つに分割したので,500 records/sec でレコード数は 3000 万件です.データ用テーブルの各レ…

なんとかスライド完成

気がついたら明日が発表という状況です.とりあえず,スライドを完成させたのですが,余計な説明の入れ過ぎで長くなってしまいました.時間内(たしか 15 分)で終わるように,説明の粒度を設定する必要がありそうです.# 長すぎるスライドは分かりにくいか…

MySQL をフリーズさせるには

1000 程度の INSERT 文からなるトランザクションを送り続けたら,しばらくしてフリーズしました.停止したのは,レコード数が 650 万くらいのときだったと思います.その後,放置しておけば復帰するかとも思いましたが,OS ごとお亡くなりになりました. 今…

MySQL から Firebird に移行すべきかも(メモ)

「Firebird にした方がいいんじゃないか?」というコメントをいただいたので,新しい選択肢に追加です.まだ少し調べただけなので断定はできませんが,良さそうな感じです. 本拠地に戻ってから本格的に調べる予定…なのですが,発表の準備があるため,残念な…

MySQL のデータ移行(メモ 2)

大規模なデータに索引を付けるとなると,ボトルネックになるのは HDD のシークタイムと相場が決まっているので,おそらく RAID 0 に変更するだけで問題解決です.そんなことに今まで気づかなかった原因は,HDD の接続に使っている eSATA のインタフェースカ…