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

先月 2006年03月 来月
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 29 30 31

2006年03月09日(木) [n年日記]

#1 ISM

ISM の公開講座に出席するため, 朝4時起きで新幹線に乗って広尾へ。
今回はお忍びで行こうと思っていたら, 案の定? お昼を食べに外に出た時に 伊庭さんに遭遇。w
ちょうど北大の 久保さん も来られているとのことで, 終わった後に伊庭さんの部屋に行ったのですが, ドアの張り紙に僕が気付かず帰宅。 物理×生態学×自然言語になって面白い話が聞けたかも知れなかったので, 残念です。
ちなみに次の日は松井さんの部屋に寄って, お茶をいただいて帰りました。


2006年03月15日(水) [n年日記]

#1 NLP-2006

仕事があったので, 言語処理学会は15日に帰ってきました。
言語モデルのチュートリアルは最後の方にややこしい話が色々あって 心配したのですが, わかりやすかったという話がわりと聞けてよかったです。 山本先生の力なのではないかと思います。 最初に話がありましたが, チュートリアルのPDFは http://www.mibel.cs.tsukuba.ac.jp/~myama/pdf/topic2006.pdf から見ることができます。
PowerPointで6ページ/枚になっていて少し小さい気もするので, あとで (僕の手元にはありますが)カラーのA4横形式にしたものも置いてもらえるかどうか, 頼んでみようと思います。

ちなみに, CRFというと午前中は Conditional Random Fields のことだったのに対し, ベイジアンからは CRF=Chinese Restaurant Franchise だ, というネタが 本当はありました。打ち合わせで話していたのに残念。(w *1
ちなみに, 午前中は DP = dynamic programming なのに対し, 午後は DP = Dirichlet Process だ, という話もあります。 識別モデルと生成モデルの距離は縮まっていると思うので, これはあくまでネタ ですが。

blog マイニングのチュートリアルは, 飯田君が鋭いコメントをしていた ように, 既存技術の集合という感じでそれ自体にはあまり新しい話はなかった と思いましたが (正確に言うと, 評価表現の3-PLSIモデルやイジングモデルは既存の 話ではないのでもっと押してもいいかと思ったのですが, それはあまり説明されなかった), 最後の質疑応答が面白かったです。 忘れないうちに, 出たポイントをメモから転記。


*1: もっと言うと, p(CRF=x|人) ∝ p(人|CRF=x)p(CRF=x) ということです。(ぉ

#2 Poster

14日は朝5時までポスターを書いていたので, 午前中のHMM/CRFのチュートリアルには 出れなかったのですが(残念), 自分のポスター(「Gibbs Samplingによる確率的テキスト分割と複数観測への拡張」)は 論文のページ に置いておきました。


2006年03月20日(月) [n年日記]

#1 NLP-2006 (2)

山本先生の了解を得て, チュートリアルのスライドをカラーA4横, 1スライド/ページ にしたものを置いておきました。
http://chasen.org/~daiti-m/paper/topic2006.pdf


2006年03月22日(水) [n年日記]

#1 Generative AND discriminative

大羽さんの ベイズWiki で, 生成モデルと識別モデルの関係についての Minka のテクニカルレポートが 紹介されていた ので, 僕も読んでみました。
"Discriminative models, not discriminative training", Tom Minka, Oct 2005.
ftp://ftp.research.microsoft.com/pub/tr/TR-2005-144.pdf
前半の内容は一部, CRF(Conditional..の方)の論文に書かれている内容とかぶって いる部分もありますが, データ全体のモデルの観点から, さらに一歩踏み込んだ 考察になっています。

A4 1枚なので読んだ方が簡単ですが, 内容を日本語で簡単に言うと, 識別モデルで最大化されるラベルの尤度 p(C,θ|X)=p(θ)p(C|X,θ)の裏には, 生成モデルの立場からは データ X を生成した「別の」パラメータ θ' があって, 本当は

p(C,X|θ,θ') = p(C|X,θ)p(X|θ')
になっているのだ, ということ。このようにデータ X を生成したパラメータθ'と, ラベルを生成したパラメータθが decouple されているので, それだけモデルの 柔軟性が高まる。(が, 推定の精度は下がる可能性がある。)
上の式はさらに, すべての結合確率を考えると
p(C,X,θ,θ') = p(θ,θ')p(C|X,θ)p(X|θ')
となって, ここで p(θ,θ')=p(θ)p(θ') と分離できれば, この確率最大化は普通のCRF等の 尤度最大化と同じになる。 *1 だが, 一般にはそうとは限らないので, p(θ,θ')の依存関係を入れることで, unlabeled data (Xのみ)が含まれる場合も consistent にモデル化できます, という話。
識別モデルの人も生成モデルの人も, 学習に関連している 人ならぜひお勧めです。(thanks for 大羽さん。)
*1: 逆に言うと, CRF等ではθとθ'のそういう独立性が仮定されている。

2006年03月27日(月) [n年日記]

#1 NL-172

JAISTのNL研から帰ってきました。 帰りは白井さんの車で内元さん, 中川君と一緒に小松まで送っていただいて, かなり楽に帰れました。
前に合同研究会で来たときは車だったので, JAISTは平野部の田の中にある丘の上にある というイメージだったのだが, 今回鶴来からシャトルバスに乗ってきて, 山が近い のにびっくり。
地図を見てみると, ちょうど両白山地の裾野の所に位置していて, めちゃめちゃ典型的な扇状地の地形になっているようです。 (教科書に載せたいくらい。) Google Mapによる地形

今回の僕の話はディリクレ過程混合モデルでDMを推定する, という話 ですが, 結局Blei(2004)のDP混合モデルの変分ベイズ法をそのまま使った 感じになってしまったので, 正直書くのがかなり欝でした。 まぁDMをDPでやるという穴を埋めたかったのですが, かなり反省。
もちろん, 最適な混合数の所にEMを回すと収束するというのは面白いのですが, 「そんなの自明じゃん」というのはわかっておりますので.. という感じ。
実は, Blei(2004)を理解するためには, 測度論→DP→HDPと全部理解して, さらに Ishwaran and James (2001)にも依存していて変分ベイズも使って.. と理解できる前には果てしなく長く思えた道のりがあったのに, 理解できてみると すごい自明で, それ以上拡張もできなかったという話。うーん。 とはいえ, DPの話はずっと興味を持っていて時間を使っていたことでは あるので, これでとりあえずは切りが付いたかなと。

#2 酵素パワー (違

注: 以下はこの前の休日にやった遊びで, 研究には全然関係ないので, 興味ない方はスルーして下さい。
この間統数研に行ったときに雑談で出た話をプログラムしてみたくなったので, さくっと実装してみた。

このプログラムを使うと, 任意のテキストを真っ白に変換できる。
~/atelier/white% echo "Hello, world." | whiten > hello.white
とすると,

                                                                                                             
驚きの白さに!(ぉ
もとに戻すには, unwhite にかけます。
~/atelier/white% unwhite < hello.white
Hello, world.
中身は予想通りで, 下のような感じで簡単に書けます。
whiten.c:
/*
 *  whiten.c
 *  Mon Mar 20 16:18:15 JST 2006 dmochiha <at> slc.atr.jp
 *
 */
#include <stdio.h>
#define  white  "\x20"
#define  WHITE  "\xa1\xa1"
#define  BITS(c,n)      ((c & (1 << n)) >> n)

int
main (int argc, char *argv[])
{
        int i, b, c;
        
        while ((c = getchar()) != EOF)
        {
                for (i = 0; i < 8; i++)
                {
                        if ((b = BITS(c, i)) == 0)
                                printf(white);
                        else
                                printf(WHITE);
                }
        }
        exit(0);
}
unwhite.c:
/*
 *  unwhite.c
 *  Mon Mar 20 16:34:50 JST 2006 dmochiha <at> slc.atr.jp
 *
 */
#include <stdio.h>
#define  SETBIT(c,n)    (c |= 1 << n)

int
main (int argc, char *argv[])
{
        char b = 0;
        int c, i = 0;

        while ((c = getchar()) != EOF)
        {
                switch (c) {
                case 0x20 :
                        break;
                case 0xa1 :
                        SETBIT(b, i); c = getchar(); break;
                default :
                        fprintf(stderr, "error: c = %d\n", c); exit(1);
                }
                if (i == 7) {
                        putchar(b);
                        b = 0;
                        i = 0;
                } else
                        i++;
                
        }
        exit(0);
}
0->半角スペース, 1->全角スペースなので, jpegや圧縮ファイルなどは 平均的にはほぼ(8+16)/2=12倍になります。 ちょっと面白かったのは, テキストなどは0が多いので10倍くらいなのかなと思っていたところ, せいぜい11倍くらいだったという結果。意外と1が多い。 man ascii すると, 英小文字はcharの後ろの方に割り当てられている ので, 比較的1が多いのだろう, という話でした。
ちなみに 謎リンク。 本質的には, 上でやっていることはこれと同じです。(w


2006年03月29日(水) [n年日記]

#1 nets

メモ: ICML2006 Workshop
"Statistical Network Analysis: Models, Issues and New Directions" http://www.cs.cmu.edu/~eairoldi/nets/
メモっておかないと忘れそうなので。


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