2009-01-01から1年間の記事一覧

続・入力補完

Google n-gram を使って入力補完を試してみました.ただし,あまりにもデータが大きいので,日本語版については頻度 800 以上,英語版については頻度 2000 以上の n-gram のみを利用しています.また,あまり細かい頻度を提示しても見づらいだけなので,有効…

入力補完で楽しむ

dawgdic にキー補完を加えたので,サーバサイドでの入力補完を実装してみました.利用したのは,script.aculo.us の Ajax.Autocompleter です. サーバ側の設定 http://wiki.github.com/madrobby/scriptaculous Ajax.Autocompleter の使い方 http://wiki.git…

dawgdic-0.4.0 に更新

キー補完の機能を加えたものを dawgdic-0.4.0 として公開しました. dawgdic - Project Hosting on Google Code http://code.google.com/p/dawgdic/ まだドキュメントはできていません.機能については,昨日(2009-08-19)の内容をご覧ください. 2009-08-1…

文字列補完の実装状況

dawgdic-0.3.1 にキー補完の機能を加えて dawgdic-0.4.0 とする予定です.とりあえず,動く状態のソースコードは Subversion にコミットしておきました.新しくできるようになったのは,与えられた文字列で開始するキーを辞書順に取ってくることです.基本的…

文字列補完の実装準備(メモ)

トライによる文字列補完は容易に実現できるのですが,どうしてもインタフェースが複雑になってしまうので悩み中です.すべての候補をまとめて受け取るようなインタフェースであれば簡単なのですが,候補を一つずつ受け取るには,どうしても補完の進捗を保存…

ssgnc-0.2.2 に更新

configure と make で発生するエラーを解決できたようなので,ssgnc-0.2.2 としました. ssgnc - Project Hosting on Google Code http://code.google.com/p/ssgnc/ 環境の違いに対処できるように修正しただけなので,機能自体には何の変化もないはずです. …

boost::program_options から getopt へ

ssgnc にて boost::program_options の利用を止め,getopt に移行していました.以前に使ったことがあり,オプション自体も単純なものだったため,ほとんど苦労することなく完了です. 別の環境で問題がなさそうであれば,最新版を ssgnc-0.2.2 として公開し…

ULLONG_MAX がなくてエラー

ssgnc をビルドできないというエラーレポートが届いたため,Vine Linux ※ でビルドできるかどうか試してみたところ,struct ::stat という記述と ULLONG_MAX が定義されていないというエラーが確認できました.そこで,以下のように修正を加えました.※ Vine…

-lboost_program_options は環境依存っぽい

Ubuntu ではパッケージマネージャで boost をインストールした場合,-lboost_program_options で問題なくリンクできます.でも,他の環境では問題があるということで,少し調べてみたところ,debian 環境がシンボリックリンクを提供しているらしいことが分か…

天候が悪すぎるのではないか

先月末には梅雨が明けたというのに,今月に入ってから雨続きです.しかも,豪雨になる割合が高く,昨日・今日の午前中は,交通機関も麻痺していたようです.なんかもう「やってられないんだぜ」という気分になってきました.

ssgnc-0.2.1 に更新

ssgnc-0.2.0 から ssgnc-0.2.1 に更新しました.インデックスには影響がないため,ssgnc-0.2.0 で作成したデータは,そのまま利用できます.変更点は,CGI スクリプトを生成するためのスクリプトの修正です. 変更点 修正: ssgnc-gen-cgi.pl クエリ中のシン…

この前の発表で使った資料

ssgnc の中身に関する説明になっています.手法がとてもクラシックなので,Introduction to Information Retrieval (IIR) の 1, 2, 5 章が分かれば,すぐに分かってしまうことでしょう. スライド PDF http://sites.google.com/site/headdythehero/cabine/20…

dawgdic-0.3.1

dawgdic::DawgBuilder と dawgdic::Dawg のメンバ関数 num_of_merged_states() を修正しました.以前は併合された「遷移の数」を返すようになっていたのを,「状態の数」を返すようになっています.また,「遷移の数」を返すためのメンバ関数 num_of_merged_…

ssgnc-0.2.0 による索引の構築時間とサイズ(メモ)

日本語版・英語版それぞれ 3, 4 時間くらいで索引を構築できました.ただし,RAID 0 にして HDD アクセスを高速化していたり,一時ファイルの保存先が SSD だったりというドーピングがあるので,一般的な環境では,もっと少しかかるでしょう.とはいえ,一日…

ssgnc-0.2.0

とりあえずアップロードしましたが,ドキュメントがないので使い方が謎の状態です. ssgnc - Google Code http://code.google.com/p/ssgnc/ 追記(2009-07-10):CGI 用の perl script でパラメータが反映されないバグを修正.追記(2009-07-10):正しい検…

Darts-clone 0.32f(dawgdic 依存)

darts-clone 0.32f を公開しました. darts-clone - Google Code http://code.google.com/p/darts-clone/ 結局,中身が dawgdic になってしまいました.利用には dawgdic-0.30 以降が必要になります.一応,ChaSen 2.4.4 および MeCab 0.98pre3 にて,darts.…

文字コード判定プログラム

文字コード判定プログラムを作成してみました. mojicode-0.1.0.tar.gz http://sites.google.com/site/headdythehero/cabine/2009/0703/mojicode-0.1.0.tar.gz?attredirects=0 デフォルトでは,ひらがなとカタカナだけを見て文字コードを判定します.最初に …

文字 n-gram の抽出

文字 n-gram の頻度を抽出するプログラムを以下の場所に置いてみました. char-ngram-0.1.0.tar.gz https://sites.google.com/site/headdythehero/cabine/2009/0630/char-ngram-0.1.0.tar.gz?attredirects=0 使い方は,./configure と make をしてから get-n…

ssgnc の更新予定

比較実験用に簡易版のシステムを作成しました.せっかくなので,近いうちに公開しておこうと思います.ただし,単純な転置索引を使っているだけなので,性能的には使い物になりません.手抜きをしているので構築が遅いという欠点も….追記(2009-07-01):ss…

dawgdic の更新(0.3.0)

ヘッダの位置と名前空間が変更されています. ヘッダ から へ 名前空間 nanika::dawgdic から dawgdic へ また,dawgdic::Dictionary で辞書探索できるようになったので,dawgdic::DictionaryExplorer は削除しました.後は,入力用のクラス ios::LineReader…

一時ファイルに関するメモ

mkstemp() で作成した一時ファイルは,::close() でディスクリプタを閉じても削除されません.というわけで,::close() をした後(前でも問題ないかも),明示的に削除する必要があります. それで,まず ::remove() を試してみたところ,削除することができ…

クラッシュ

三週間も更新なしの状態になっていました.何もなかったというわけではありません.例えば,データがとんだり(一回目),データがとんだり(二回目),実験用のプログラムにバグが見つかってやりなおしたりと,一人で騒いでいました.〆切の三日前にデータ…

横長原稿の作成

情報処理学会の論文しや研究報告は,スタイルが横長に変更されています. http://www.ipsj.or.jp/09sig/kenkyukai/genko.html でも,配布されているスタイルファイルをそのまま使ってみたところ,用紙設定が横長にならず,右端が切れた状態の PDF ができてし…

ブラウザから Graphviz が使えると便利かと

そもそも,まだ使ったことないのですが,とりあえず Graphviz を利用するための CGI プログラムを作成してみました.Vista では動かないという話を聞いたのが理由です.確認していませんけど….以下,メモ代わりです. #! /usr/bin/perl use strict; use war…

そういえば Darts 関連でメモ忘れ

Darts-0.31 から Darts-0.32 に更新してコンパイルエラーが出るときは,Darts::DoubleArray::build() の引数 key の型を const key_type ** から const key_type * const * に変更して,Darts::DoubleArray::key_ の型を const node_type_ ** から const nod…

上位下位関係抽出ツール実行完了

jawiki-20090527-pages-meta-current.xml.bz2 を対象として昨日の 17:15 に実行したのですが,今さっき完了しました.CPU は Pentium Dual-Core 2.5GHz で,実行時間は約 24 時間です.ただし,同時に別の重い処理を実行していたので,単体で動かせばこんな…

上位下位関係抽出ツール実行中

せっかく教えていただいたので,上位下位関係を抽出しています.どのくらいかかるのか分からない点が少し不安ですが,そのうち終わるでしょう. 上位下位関係抽出ツール: Hyponymy extraction tool http://nlpwww.nict.go.jp/hyponymy/index.html 私の環境(…

Wikipedia のカテゴリは深い(いろんな意味で)

Wikipedia のダンプ(XML )からカテゴリ情報を取り出して,何かに使えないかといろいろ試していたのですが,やはりカテゴリが多すぎて使いにくいようです.他にも,カテゴリのグラフ構造が Cyclic になっていることも扱いを困難にしています.カテゴリのグ…

protobuf が更新されてる

いつの間にやら protobuf が 2.0.3 から 2.1.0 に更新されていました.オブジェクトを初期化するためのメンバ関数 Clear() や,ポインタと文字列長の指定により文字列を更新するメンバ関数なんかが追加されているようです.ByteSize() はシリアライズしたと…

風邪ひき

症状は頭痛,寒気,吐き気くらいで,一日寝ていたら,かなり楽になりました.おそらくインフルエンザではないでしょう. とはいえ,まだ体がだるく,無理すると再び寝込むことになりそうなので,今日は適当に過ごすことにします.