mots quotidiens.
Daichi Mochihashi (持橋大地) daichi <at> ism.ac.jp by hns, version 2.10-pl1.

先月 2010年02月 来月
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28

2010年02月10日(水) [n年日記]

#1 Gnus+nnmhでMail

研究には直接関係ない話。
個人的に, メーリングリストの過去メールをまとめ読みする必要が生じた。 今でも, MLのメールを後でゆっくり読みたい等ということは結構あるのではないかと 思います。
こういう目的にはメーラーではなく, 既読/未読を管理でき, メールをスレッド表示 してくれるニュースリーダーが便利です。昔はメールを持ち帰って, GNUSでメールを 読んでいました。 (正確に言うと, 指導員室の SparcStation でMLのメールを tar+gz で固めて持ち帰った後, Macの漢字Talk7上の Mac MiNT (System7用のUnix環境)上の Nemacs 3.3.2+GNUS 4.1 で メールを読んでいました。..マニア!)

GNUSはサーバを ":Mail" のように指定すると mhspool.el (現在はnnmh.el) の機能で ~/Mail を読んでくれるという機能があり, 現在も使えるようですが, 実際に起動してみると, あるはずのメールフォルダが表示されません。 Gnusはその後 Nana Gnus やら September Gnus やら専門のマニアでないと付いて いけない世界に突入していたため見送っていたのですが, そろそろEmacsも枯れてきた ので大丈夫だと思い, 決意して設定してみました。
かなり色々壁があったので, 以下その過程のメモ。

・ ステップ1:

さて, まず, 例えば Thunderbird ではメールは ~/.thunderbird/*.default/Mail/Local Folders/ 以下にある一つの ファイルに mbox 形式でまとめられているので, それをバラす必要があります。 *1
これにはMHを使うと簡単です。MHは最近のLinuxには入っていないようなので, http://www.nets.ne.jp/~matsu/MH/ あたりから src.rpm をgetしてbuildします。 MHの inc コマンドは通常 /usr/spool/mail/`whoami` のメールボックスを読みますが, これは -file オプションで変えられるので, .mh_profile に Path: Mail 等を書いて おいてから,
% inc +foo-ml -file /tmp/FOO-ML
で ~/Mail/foo-ml/ にメールを inc してばらします。

・ ステップ2:

ここで Gnus を起動するわけですが, 実際にやってみると, 上のfoo-mlも何も表示 されません。この原因は, 昔のGNUSと異なり, 明示的にUをタイプしてディレクトリを 「講読」しないと表示されないことのようなので, Infoを読むと
(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*")
のように書くと, 自動的にフォルダが講読されるようです。

・ ステップ3:

これでメールフォルダを Gnus 5.9 で読めるようになったわけですが, 実際に読んでみると, 多くのGmail関係のメールの From: や Subject: が(none)と 表示されます。(!)
少し調べたところ, どうもこれは Gmail の付ける長い符号化されたsignatureヘッダ や, Received: が連続に連続を重ねると発生するらしく, どちらも読むためには不要なので, 下のようなスクリプトであっさりカット。そもそも nnmh は勝手に自分で管理用の ヘッダを付加するようなので, ヘッダを削ることは問題ないと思います。
#!/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でメールが読めるようになりました。万歳。
以前と比べて, じっくりメールを読むことは減ってきているように思いますが, こうしてオフラインでゆっくり読める環境も大事なように思います。


*1: Gnusのnnmboxを使うとmbox形式のファイルを直接読めますが, これは当然メールボックスを直接1つだけ指定することを想定しているので, こうした用途には向かないと思います。

2010年02月12日(金) [n年日記]

#1 -

連携講座関係の打ち合わせでCS研に来られた京大の 田中先生 に, ずっとお話を伺う。
色々なお話を聞いて, 本当楽しかったです。

最近つくづく思うことは, もし関西に来ずに東京にずっといたら, こういう機会は まずなかっただろうなぁ, ということ。
日本の自然言語処理の実質上の本場である京阪奈に来て(京阪奈がそうなのは, 結局長尾先生の影響だと思います), 関西の色々な方 と話すことができているのは, 非常に貴重な経験だと思っている。

あまり就職先等を選ぶときにそういうことを気にしている人は少ないのかも 知れないですが..。


2010年02月24日(水) [n年日記]

#1 MCMC研究会@ISM

立川に二泊して, 土・日の統数研でのMCMC研究会から帰ってきました。

どの発表もとても興味深い内容で, 特に美添一樹さんのモンテカルロ木探索の話が 非常に力の入ったトークでした。
北門さんの漁業での混合比推定のお話もなるほどという感じで, Pritchard(2000)のadmixtureの話(=LDAと同じモデル)が出たので, これも入れないといけないと思い, 急遽翌日の自分のスライドにLDAの紹介の話を入れた のですが, 北門さんは二日目は出席しておられなかったようで残念でした。
結構参加者がいて, 色々な話や議論があって, かなり成功だったのではないかと思います。

僕は二日目朝に, 統計的NLPの最近の状況とそこでのMCMCの使われ方について いくつか紹介しました。
別に僕はMCMC信者というわけではないですが, 色々な場面に有用な手法なのはなぜか, のような話も書いてあります。 PDFを置いておきましたので, ご興味のある方はどうぞ。 *1


*1: インフォーマルな研究会なので, わりと本音っぽいことが書いてあったりします。

#2 電通大

翌日は実家に泊まって, 月曜日は韓先生のシャノン賞受賞記念講演会 「情報数理の遥かな地平」 を聴きに, 調布の電通大へ。甘利先生や韓先生の謦咳に初めて接してきました。


3 days displayed.
タイトル一覧
カテゴリ分類
 なかのひと
Powered by hns-2.10-pl1, HyperNikkiSystem Project