|
mots quotidiens. | |
| 持橋大地 (Daichi Mochihashi) daichi <at> cslab.kecl.ntt.co.jp | by hns, version 2.10-pl1. |
|
|||||||||||||||||||||||||||||||||||||||||||||||
実際のプログラムはうまく抽象化して書いてあったことが幸いして, 少し直すだけで対応完了。
というのが前置きで, 以下がその結果。
上はかなり小さいデータ(京大コーパスから5000文)のもので, 毎日新聞2000年度全文 (約150万文)を突っ込んだメモリ使用量は, dense_hash_map で7.5G, splay tree で 4.0Gでした。ちなみに, ナイーブに ext/hash_map を使うと20G超えのようです。
Algorithm Time Memory dense_hash_map 33.48min 209M sparse_hash_map 55.28min 111M splay tree 57.13min 76M
どの発表もとても興味深い内容で, 特に美添一樹さんのモンテカルロ木探索の話が
非常に力の入ったトークでした。
北門さんの漁業での混合比推定のお話もなるほどという感じで,
Pritchard(2000)のadmixtureの話(=LDAと同じモデル)が出たので,
これも入れないといけないと思い, 急遽翌日の自分のスライドにLDAの紹介の話を入れた
のですが, 北門さんは二日目は出席しておられなかったようで残念でした。
結構参加者がいて, 色々な話や議論があって, かなり成功だったのではないかと思います。
僕は二日目朝に, 統計的NLPの最近の状況とそこでのMCMCの使われ方について
いくつか紹介しました。
別に僕はMCMC信者というわけではないですが, 色々な場面に有用な手法なのはなぜか,
のような話も書いてあります。
PDFを置いておきましたので, ご興味のある方はどうぞ。
*1
最近つくづく思うことは, もし関西に来ずに東京にずっといたら, こういう機会は
まずなかっただろうなぁ, ということ。
日本の自然言語処理の実質上の本場である京阪奈に来て(京阪奈がそうなのは,
結局長尾先生の影響だと思います), 関西の色々な方
と話すことができているのは, 非常に貴重な経験だと思っている。
あまり就職先等を選ぶときにそういうことを気にしている人は少ないのかも 知れないですが..。
GNUSはサーバを ":Mail" のように指定すると mhspool.el (現在はnnmh.el) の機能で
~/Mail を読んでくれるという機能があり, 現在も使えるようですが,
実際に起動してみると, あるはずのメールフォルダが表示されません。
Gnusはその後 Nana Gnus やら September Gnus やら専門のマニアでないと付いて
いけない世界に突入していたため見送っていたのですが, そろそろEmacsも枯れてきた
ので大丈夫だと思い, 決意して設定してみました。
かなり色々壁があったので, 以下その過程のメモ。
% inc +foo-ml -file /tmp/FOO-MLで ~/Mail/foo-ml/ にメールを inc してばらします。
(define-key ctl-x-map "g" 'gnus) (setq nnmh-directory "~/Mail") (setq gnus-select-method '(nnmh "")) (setq gnus-options-subscribe ".*") (setq gnus-options-not-subscribe "*draft*")のように書くと, 自動的にフォルダが講読されるようです。
#!/bin/env perl
while (<>)
{
if (1 .. /^$/) {
if (/^$/) {
print_header($header);
} else {
$header .= $_;
}
} else {
print;
}
}
sub print_header
{
my $buffer = "\n" . shift;
my @header = split(/\n([A-Z][\w\d\-]*:) /, $buffer);
shift @header;
while (my ($label, $content) = splice(@header, 0, 2))
{
unless ($label =~ /signature/i || $label =~ /^received/i)
{
printf("%s %s\n", $label, $content);
}
}
}
ここまでやって, ようやくGnusでメールが読めるようになりました。万歳。
英語の単語モデル(文字∞-gram)から生成した例。(Penn Treebank+オバマ就任演説)
sj:~/work/segment/src% ./spygen -c -n 30 ../model/obama+ptb varied grain classistor ruminus read headof myhome eastgo smoke her garry nexty . hunkyu stify feckless s dinnie ener stis pilepar dottles crash gamble summon abated stoppeduzz muched the disおお, いかにもそれっぽいですが, ありそうで, 実際にはない単語が。 個人的には, 単純なn-gramなので, こんなに「英語らしい」単語が生成されるとは 少し意外でした。
sj:~/work/segment/src% ./spygen -c -n 30 ../model/shoko リンパ きたいから 空間 もう一度 って ぉぉおおぉー 思い出せない いったし wwwwwww 、 暖冬 とどんそく みえます ぐってた 憧れ だらーり 貼った さん 福本先生様 トリップルパイ 震える 『 覚えて ハート ホテル (′ωω`) で 天才 メンB 飼う言うまでもないですが, いわゆる辞書があるわけではないので, 実際に存在する単語 と一致するものがあるのは単なる偶然 (あるいは, モデルが正しく学習されていることを示すもの)です。新しい顔文字が。w
下は源氏物語からの生成(ランダム源氏物語)。
sj:~/work/segment/src% ./spygen -n 5 ../model/genji.n2 いとよう思ひしづめて、山深きこと、と思すも、なほ、いともかしこには、同じことに て、限りある御身には、いとどしく侮らはしく思ひければ、あさましうなりたまひて、 その返り事は見せたてまつりたまへば、ことになかりし儀式、よそほしうひきつづきて、 その世の道理なれど、院の御子の方の人、 「来し方のことなど、我は 、おのづから 御覧じ知らるることもこそ、かやうの御前の花の木どもも、げにいとおもしろし。 ことごとしくもてなさせたまふ。 大将の宇治に、 「心憂く。 風のつてに見しやどの紅葉をこきまぜて、生ひ先篭れる窓の内なるほどになん。 頼もしげなきやうなりや。こういうことができるのは生成モデルだからこそなので, 研究的にはおまけとは言え, 面白いなあ, と思います。
今回は第III回ですが, 第I回の久保さんの階層ベイズモデルのイントロダクションは 10月号に載っていて, 久保さんのページ でPDFが見られるようです。
僕の記事はもともとLaTeX 6ページに収めるつもりで図を2 columnに入れるように ギリギリまで圧縮して書いたのを, 1コラムに展開されてしまったので, 図が僕の意図 より若干大きくなってしまっているのが残念です。その他, 「分かる」が漢字になって いるとか, 「尤度」がひらがなになっているなども信学会の編集の結果のようです。
基本的な主張は, よい論文を落とさない(recallを上げる)にはいくつかの方法があるが,
一番なのは Acceptance rate を上げることだ, ということ。rate が20%を割ると,
明らかに良い論文が落ちるようになるらしく, それを簡単な数値実験とともに
示しています。
面白いのは, committee の評価基準として, 「クロスバリデーション」, つまり,
committee を入れ替えてみて, 同じ論文が通るかの precision と recall を測る
ことができる, という話。実際にどれくらい実行できるかはわからないですが,
「真に良い論文」が埋もれている可能性があり, それを客観的に評価することができる
という視点は面白いと思います。他の分野の方にもお薦めです。
![]() | ![]() |
| タイトル一覧 | |