2005-11-01から1ヶ月間の記事一覧

差分の差分

[2005-11-28-1] では連結によって記述長差分に影響を受ける2-gram についてのみ、 記述長差分を再計算する、とした。 けれども、もっと詳しく見れば、 記述長差分を構成する項のうち、影響を受ける項だけを更新することもできるはず。そこで、差分の差分のよ…

衝突が起きるパッケージを dpkg でインストールしてしまったとき

apt のパッケージには競合するパッケージの組がいくつかある。 そのひとつが、印刷システムの lprng と cups。 cups をインストールしているときに、lprng に依存するドライバを手動で dkpg -i hl5070liblpr.deb のような感じでインストールしようとすると、…

マウスカーソルの画像を変える

/usr/X11R6/share/cursors/xorg-x11/ 以下にあるディレクトリの名前が、カーソルのテーマの名前。 たとえば whiteglass というテーマを使いたいときは、 ~/.Xdefaults に Xcursor.theme: whiteglass と書く。 カーソルの大きさも Xcursor.size: 30 のように…

Suffix Vector は本当に必要なのか? Suffix Vector を使ったこれからの実装

ハッシュを使った現在の実装、高速化の見通しはどうなっているのか?

現在の実装↓ データ: { 本体文字列の連結リスト 単語1〜4gramの出現頻度を保持するハッシュ }for(;;) { 1) 連結した場合の記述長変化分が最小の候補を求める: { foreach [ 連結候補 1.1) 連結した場合の記述長変化分の計算: { 連結候補 AB の連結される出…

特別実験報告会予稿(言語モデル最適化バージョン)

表題:言語モデル性能の改善を目指した最小記述長原理にもとづく単語分割 概要: 自然言語処理において、統計的言語モデルは音声認識、機械翻訳など幅広い応用に用いられている基礎的手法のひとつである。統計的言語モデルは、文を単語列として見たとき、あ…

西尾泰和(NISHIO Hirokazu)

http://kanaya.aist-nara.ac.jp/zope/member/nishio/japanese WindowIterator[2005-11-25-1] があった。 配列上でウィンドウをずらしながらある処理をしたい Python と Java のコード例と、時間測定。Java だったら、WindowIterator は List を(作って)繰…

必要のない差分の再計算をしないようにする

A,B の連結を行うまえとあとで、 A,B の連結により影響を受けない(記述長計算にかかわる範囲での文字列の連結状態が変わらない)差分の再計算をしないようにする。こうしたことが必要になったのは、記憶のない符号化に比べて計算時間が増えたため。 だいた…

重複なしでの頻度と重複ありでの頻度の使い分け

複数文字列を含む区間をひとまとめに符号化するときに、重複なしで数える必要がある。 (つまり連結対象文字の連結される出現)たとえば、コーパス AAAA 上で AA を連結するとき。 コーパスの左端から順に連結していくことを想定すると、 通常の(重複あり)…

窓イテレータ

int wsize = 2; WindowIterator it = new WindowIterator(new Integer[] {10,20,30,40,50}, wsize); while ( it.hasNext() ) { foreach ( int x : it.next() ) { System.out.println(x + " "); } } // 10 20 \n 20 30 \n 30 40 \n 40 50 \n と表示される 連…

Lambda Closure at Perl Design Patterns Wiki

http://perldesignpatterns.com/?lambdaclosure Perl のレキシカル変数で lazy evaluation レキシカル変数は関数呼び出しのたび生成され、それを参照するスコープが消滅するまで残る。 do { my $head = sub {}; sub add_link { my $link = shift; my $next =…

標準出力バッファリング無効化

use IO::Handle; STDOUT->autoflush(1); STDERR->autoflush(1);

辞書の符号化を辞書内unigramに

[2005-11-08-6]の方法。 1文字の符号長を固定にしていたのは、辞書の符号長の差分の計算を、 辞書エントリの数に依存せずに計算するため。いま考えている記憶のある符号化では、コーパスの符号長を計算するときに辞書エントリ全体を走査するので、 辞書内で…

Storable - Perlデータ構造体の永続化

http://perldoc.jp/docs/modules/storable-2.05/storable.pod Perl でシリアライズ。 配列やハッシュの中のリファレンスを勝手にたどって保存してくれるので便利。 sagrep で索引データを格納するのに使っている。 書き込んだときと違うバージョンの Storabl…

Term-ReadLine

Perl で行編集可能な CUI プログラムを作るときに使うモジュール。おまけ:これがインストールされていると perl -d のデバッガが行編集可能になる。

これからプレゼンをする若者のために

http://hosho.ees.hokudai.ac.jp/~shasegaw/presen_howto/index.html 植物生態学的プレゼン。 表題スライドは フォントサイズは40ポイント程度と大きくし印象を強くする。 さらに、可能なかぎり研究材料の綺麗で象徴となるような写真を配置したい。 「導入が…

Welcome To PKU JudgeOnline

http://acm.pku.edu.cn/judgeonline/ 千以上のプログラミングコンテスト。

Suffix Vector まとめ

Krisztian Monostori さんの博士論文[2005-11-02-1]が原典 suffix tree を格納する形式のひとつ 他の形式: suffix tree は木なので、一般的な木の格納形式が使える suffix tree 特有の冗長性を利用した、より効率的な格納形式がありえる ほかにも冗長性を利…

連結リスト上の Suffix Tree

ふつうの Suffix Tree は、文字列のランダムアクセス性を仮定している。でも、いま考えている選択的アルファベット拡大(文字の連結によるアルファベットへの新文字追加)を 行うには、配列よりも連結リストの方が都合がいい。 連結リストではランダムアクセ…

Suffix Array の構築時間

[2005-11-18-1] の検索は sagrep で行った。 ディレクトリ pyxis:/home/data/documents/suffix_array で、 sagrep "尼崎公害訴訟" yomiuri-2000 | ./get_context.pl とやろうとしたら、yomiuri-2000 を作ったときと Perl のバージョンが違っていて動かなかっ…

Y.Motomura's Homepage

http://staff.aist.go.jp/y.motomura/ ベイジアンネットに関するセミナー資料など

新聞記事コーパスの特徴

新聞記事を集めたコーパスには「長く重複する部分文字列」が現れることがある。 同じ日に別の紙面で同じことがらを取り上げるとき、文章のコピー、引用が行われているようだ。「尼崎公害訴訟」で毎日新聞1月31日を検索した例。 前後がまったく同じものがいく…

記憶のある符号化

1-gram 確率にもとづく文字あたり(=全体での)エントロピー最小化の分割は、 2-gram, 3-gram での単語あたりエントロピーの低減には役に立たなさそう。 [2005-11-16-1]の 1-gram で最適なら、2-gram でもある程度よくなるのでは? という考えが間違ってい…

表の中身に脚注をつける

じかに \footnote と付けても表示されない。 \begin{tabular}{|c|c|c|} 1.234 \footnotemark& 1234 & 111 \\ \end{tabular} \footnotetext{概算値}

アルファベット拡大したSuffix Tree における部分文字列マッチ

拡大されたSuffix Tree は文字単位ではなく単語単位のSuffix Treeとなり、 枝は「単語」でラベルづけされる。 単語は文字列なので、 ノードからノードに枝をたどるときには、 単語数で長さ 1 の枝でも、その文字数分のマッチが必要になる。このため、単語単…

どういう「言語」を対象に、言語モデルを作るのか

新聞記事の言語モデルを1日分の記事から作ってみたが、 かなり性能が悪い。 同じ学習データを茶筌で分割したものから作った言語モデルと比べても、かなり悪い。まず、学習データが少なすぎるので、意味のある比較はできない、というのがある。 MDLの方法は、…

いまどこ?

言語モデルの性能向上という枠組で考えると……単語単位の統計的言語モデルというものがある ↓ よい統計的言語モデルは、「ただしい文」に高い確率を割り当て「ただしくない文」に低い確率を割り当てる ↓ 単語の単位のとりかたにより、統計的言語モデルの性能…

PASCAL - Pattern Analysis, Statistical Modelling and Computational Learning

http://www.pascal-network.org/ パターン認識とか。 To recover from speech recognition errors in spoken document retrieval

Unsupervised segmentation of words into morphemes Challenge 2005

http://www.cis.hut.fi/morphochallenge2005/ 教師なし形態素分割のコンペ。

An Optimal DNA Segmentation Based on the MDL Principle (ResearchIndex)

http://citeseer.ist.psu.edu/646630.html MDL 基準のDNA分割 @misc{ szpankowski-optimal, author = "Wojciech Szpankowski and Wenhui Ren and Lukasz Szpankowski", title = "An Optimal DNA Segmentation Based on the MDL Principle", url = "citeseer.…