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

先月 2009年06月 来月
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

2009年06月03日(水) [n年日記]

#1 東京出張

CS研オープンハウス2009がインフルエンザのためオンライン開催になったので, 報道向けに研究をいくつか(6つ)ピックアップして東京で内覧会をする ということで, 5:30に起きて, 大手町のNTTプレスルームへ。
新聞記者への内覧会は午後からで, その前に11時から社長が来られるかも, という 話だったのですが, 分刻みのスケジュールだと思うNTT社長が来るなんて実際にはない だろう, と思っていたら, 本当に来られました。

というわけで, 三浦社長 に教師なし形態素解析の簡単なプレゼン。 ありえない。
少し前に NTT先端総研 *1 所長の 板屋さん がCS研に視察に来られた時に説明したのも結構緊張しましたが, まさか社長に説明するとは..。
NTTには 膨大なグループ会社 があって, 普通はそこからさらに下請けや派遣があったりすると思うので, (CS研にいると意識しないですが)仕事の上流-下流という流れから言うと, 上流にもほどがあるというか。(というか, それより偉い人はいないわけで..。)

実際には三浦社長はフランクな方で, またNTTは理系の会社なので社長マンセーみたいな こともなく, 和やかにそれぞれの話を聞かれていました。 ちなみに, 他の5件は 人間部から2件(視覚や触覚の研究), 前川君のセンサの研究, 平尾さんの医療情報検索と 亀岡さんの音声の複素NMF, でした。

新聞記者さんへの説明も午後無事に終わり, 3時頃にお開きになりました。
ちょうど, 秋葉原のレトロ喫茶「古炉奈」が6/14に閉店するという話を聞いていた ので, ファンとしては閉店する前に行かねば, ということでその後行ってきました。 残念すぎる..。


*1: CS研, 物性研, 未来ねっと研などを包括するグループ。

2009年06月10日(水) [n年日記]

#1 math++.el

三月の年度末に, 予算が少し余ったということで, Linux版の Mathematicaを代理店の 日本電子計算 から購入して創知グループの計算機にインストールしました。 MathematicaにはNotebookインターフェースという標準のインターフェースが あって, 非常によくできているものの,

など, 実際にプログラムを書くには使いにくい点が多い。(ので, 家のMac上の Mathematicaもこの使いにくさのため, あまり使っていなかった。)
Emacsから使えばこの問題は解消しますが, math.el やmma.elは単にmathコマンドを シェルと同じように動かすだけか, *.m ファイルを編集するためのモードで, cmuscheme.el のようにプログラムを書きながら式を順次評価する, というような ことができない。

ないなら作れ, というX68ユーザの精神で(というほどではないですが), Nakaiさんが2003年に改良された math.el にさらに追加して, "inferior Mathematica"モードを提供する math++.el というelispを簡単に書いてみた。
上の画像のように, コードを書きながら C-cC-e (or C-cC-s)で今の式をMathematicaに 送り, C-cC-r でリージョンを丸ごと送れます。 MathematicaはLispと違って式の境界が曖昧なので, 空行で区切られた部分が 一つの式だとしています。

これは scheme をemacsで使うのとほとんど同じで(というか, Mathematicaは本質的に Lispですが), かなりプログラムが書きやすくなりました。
公開しないとどうも直す気がしないので, 簡単に 公開して おきます。

・ -

なお, Mathematica ではグラフィックスが超重要ですが, math コマンドのデフォルト では画像が出ません。問い合わせたところ, init.m などで <<JavaGraphics` として JavaGraphics をロードしておくと, 上のように別窓で画像が出るようです。

2009年06月20日() [n年日記]

#1 -

下の math++.el は math.el を基にしたものですが, 実は複数行の編集に対応して いない等がわかったので, mathematica.el を基に一からモードを書き直したもの を math++.el として上げておきました。


Mathematica愉快すぎる。 2次元のMixture of Gaussiansのコードはこんな感じになるようです (NormalDistribution[]は2次元には対応していない。)

(*
   gaussian.ma
   Sat Jun 20 00:12:25 2009 daichi<at>cslab.kecl.ntt.co.jp
 *)

gauss[x_,y_,mu_,S_] :=
    Block[
        {v = {x,y}},
        1 / (2 Pi Sqrt[Abs[Det[S]]])
        Exp[- (v - mu) . Inverse[S] . (v - mu) / 2]
    ]
gauss::usage = "
gauss[x,y,mu,S] returns a Gaussian density of mean mu, covariance S
at the coordinate {x,y}.";

mgauss[x_,y_,Pi_,Mu_,S_] :=
    If[ MatchQ[{}, Pi],
        0,
        Block[
            {pi = First[Pi],
             mu = First[Mu],
             s  = First[S]},
            pi gauss[x, y, mu, s] +
            mgauss[x, y, Rest[Pi], Rest[Mu], Rest[S]]
        ]
    ]
mgauss::usage = "
mgauss[x,y,Pi,Mu,S] returns a mixture of Gaussians of
gauss[{x,y},Mu[[1]],S[[1]]], gauss[{x,y},Mu[[2]],S[[2]]], ...
with mixing coefficients Pi.";

後ろのコードは, scheme で書くと

(define (mgauss x y Pi Mu S)
  (if (null? Pi)
      0
      (let ((pi (car Pi))
            (mu (car Mu))
            (s  (car S)))
        (+ (* pi (gauss x y mu s))
           (mgauss x y (cdr Pi) (cdr Mu) (cdr S))))))
で, まんまLispなのがよくわかる感じです。(car=First, cdr=Restらしい。)

2009年06月26日(金) [n年日記]

#1 山田さん送別会&流し素麺

グループリーダーの山田さんが7月から, 研究の現場を離れて先端総研に異動 することになったので, 皆で送別会。
僕がメールで「流し素麺とか」とポロっと書いたら, いつの間にか本当にやる ことになっていて(!), 前日から有志が竹を切りにCS研の裏山へ。 僕も午後に裏山に入って, 樋を支える三脚用に一緒に竹を何本か切り出しました。
CS研の専用テニスコート横のバーベキュー場へ運んで, 皆で組み立てて, 見事完成。 ありえない。
薬味や料理も主に女性陣の協力で沢山揃えられていて, 人数も多く, 夏らしく爽やかな, 盛大な送別会でした。
流路を調節しているところ流し素麺を食べているところ。
真ん中は主賓の山田さん
送別の花素麺用の器

上の一番右は素麺&ビール用に作った竹のカップ。余った竹を適当に鋸で切って, 洗えば完成です。 竹なので内側に細かい凹凸があるため, これにビールを入れると泡立ちがよく, 断熱性も高いので結構よい模様です。
CS研は一応京都なので, まさに本場の竹。本当にやるとは思わなかった..(笑)。

#2 -

いつの間にか, ACLのプログラム が出ているようです。 僕は初日の午前中らしい。
Statistical and Machine Learning Methodsとは自分らしいというか..。 *1 前(Percy Liang)と後ろの話が面白そうなので, 聴衆がわりと来てくれる (かもしれない)予感。
*1: Stat&MLの査読の時にリストに自分の論文がなかったので, 強制的に Word segmentation に割り当てられたのかと思っていたら, どうもそうではなかった らしい。

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