IBIS2010 に行ってきたよ(1日目) #ibis10

東大 生産技術研究所(駒場第2キャンパス)にて、第13回情報論的学習理論ワークショップ (IBIS 2010) があったので、のこのこ参加。 え? もちろん業務ですとも。 というわけで、とても簡単ながらまとめ。敬称略。 発表 反実仮想モデルを用いた統計的因果推論…

F# で素数判定 (Miller-Rabin)

Miller-Rabin 素数判定法は、与えられた奇数が素数か否かを確率的に判定する手法。 合成数を間違って素数と判定してしまう可能性はあるが、素数を見逃すことはない。 非常に大きい数が素数かどうかを単発で判定することを高速に行える(連続して判定したい場…

Cybozu Developer Conference 2010 と エンジニアの未来サミット for students

先週の 10/22(金) にサイボウズ本社にて "Cybozu Developer Conference 2010" が行われました。 といっても、これは年に数回行われる未公開のイベント。 サイボウズグループ各社(サイボウズ本社、松山、上海、ベトナム、総研、ラボ)が集まり、互いの開発・研…

F# で汎用の関数(汎用のリテラル)を書く

F# の整数は int(32ビット整数), int64(64ビット整数), bigint(多倍長整数) があって、もちろんそれぞれ型が違う。 ベキ乗とか階乗とか、どの整数型でも同じことをしたいだけでも、普通に書いたらそれぞれ実装しないといけない。 ところで F# には自動汎化と…

FSNLP 5.4 Mutual Information(相互情報量) 追伸

ちょっと前に "Foundations of Statistical Natural Language Processing"(FSNLP) 5.4 の Mutual Information(相互情報量)について書いた。 http://d.hatena.ne.jp/n_shuyo/20100827/fsnlp そこで Pointwise Mutual Information(PMI) についての説明にいろい…

第2回 自然言語処理勉強会@東京

遅ればせながら 第2回 自然言語処理勉強会@東京 の感想。 まず、自分の発表「ナイーブベイズで言語判定」についていくつかフォロー。 長時間発表してしまって聞く方も疲れただろうに、いっぱい質問や意見をいただけたことを感謝。 「なぜナイーブベイズ? …

自然言語処理勉強会で「ナイーブベイズによる言語判定」を発表してきました

第2回自然言語処理勉強会@東京 にのこのこ行ってきました。 ありがとうございました&お疲れ様でした>各位。 今回も全然専門じゃあないのに「ナイーブベイズで言語判定」というタイトルで発表してきた。 ナイーブベイズによる言語判定 from Shuyo Nakatani…

gihyo.jp での機械学習連載の第5回が公開されました

gihyo.jp での機械学習連載の第5回が公開されました。 「機械学習 はじめよう」第4回 正規分布 前編 http://gihyo.jp/dev/serial/01/machine-learning/0004 「機械学習 はじめよう」第5回 正規分布 後編 http://gihyo.jp/dev/serial/01/machine-learning/00…

「Web本文抽出 using CRF」の学習用データの作り方

第2回自然言語処理勉強会@東京が 9/25 に行われます。 前回よりキャパの大きい会場&週末に参加募集が始まったばかりですが、早くもほぼ定員。 自然言語処理に興味のある人はぜひ。でも、計画的なドタキャンは運営の方にご迷惑がかかるのでやめてね。 今度…

「パターン認識と機械学習(PRML)」読書会(最終回)

9/5 の「パターン認識と機械学習」(PRML)読書会に のこのこ参加してきました。 昨年の6月から参加してきた PRML読書会も、17回目の今回で最終回。ほんとお疲れ様でした>各位。 今回は13章後半の線形動的システム(LDS, カルマンフィルタ)から、14章の終わり…

FSNLP 5.4 Mutual Information(相互情報量)

NLP

"Foundations of Statistical Natural Language Processing"(FSNLP, サイコロ本)を読んでいるが、5.4 Mutual Information で詰まった。 書いてあることがいろいろ腑に落ちない。 まあエントロピー関連がどうにも苦手というのもあるのだが、いくつか「本当に…

Ruby/MySQL で ProtocolError が出るとき

そろそろ Ruby 1.9.2 の足音も聞こえてきたし、Ruby 1.8 用に作ってきた今までのスクリプトも 1.9 向けに直そうかな、せっかくだから MySQL/Ruby から Ruby/MySQL に切り替えよう、というシチュエーションでこんなエラーが出てしまう。 .../ruby-mysql-2.9.3…

PRML 読書会 #16 独立成分分析など+隠れマルコフモデル

すっかりブログに書くのが遅れてしまったが、「パターン認識と機械学習(PRML)」読書会(第16回)に 例によってのこのこ行ってきた。お疲れ様でした>各位。 今回の範囲は 12.4 章(独立成分分析 〜 GTM )と、13.1〜13.2 の隠れマルコフモデル(Hidden Markov…

ほどよく不自然な言語をつぶやき続けるスクリプト

Baidu さんちの不自然言語処理コンテスト用に何かネタを思いついたら作ってみようかな〜、とぼんやりしているうちに締め切りが過ぎていた。 と、残念がっていたらなんか締め切りが1日伸びたようなので、このまえ作っていた 不自然言語処理コンテストのコー…

最近読んだ論文(半教師CRF、教師有りLDA、TextRank)

読んだ自然言語処理や機械学習の論文を twitter でちょこっと紹介してみたりしている。 さらっと手短に書けていい感じ(と勝手に思っている)なのだが、論文名を書く余白がないのと、短いとは言え2個3個の tweet には分離してしまうあたりが減点。 というわ…

gihyo.jp で機械学習連載の第2回が公開されました

gihyo.jp での機械学習連載の第2回が公開されました。 「機械学習 はじめよう」第2回 確率の初歩 http://gihyo.jp/dev/serial/01/machine-learning/0002 今回は確率の話をチマチマしていますが、確率の定義とかそこらへんは結構あっさりで、実は「独立性」…

Ruby 1.9.2 で動かした場合だけメルセンヌツイスター

【追記】 コメント欄にて yugui さんにご指摘いただいた(多謝)のですが、Ruby 1.8.0 から標準の rand はメルセンヌツイスターに変わっていました……。というわけで、この記事はまるまる無用です……。 【/追記】 Ruby 1.9.2 からは Random クラスが追加されて…

「Zipf則はなぜ成り立つのかの理論的裏付け」の続き

「Zipf則はなぜ成り立つのかの理論的裏付け」の続き。おもしろいことになってきました。 FSNLPに書いてあった「ランダムにアルファベット+空白を生成、それを空白区切りの「単語」の列と考えると、それらの単語の頻度分布が Zipf に従う」を試したところ、…

自然言語処理勉強会@東京 第1回

id:nokuno さん主催の自然言語処理勉強会@東京にのこのこ行ってきた。 主催者、発表者、参加者、そして会場を提供してくださった mixi さん、みなさんありがとうございました。 こんな機会を自分で作ることは出来ないので、次回も是非何か作って参加したい…

Zipf則はなぜ成り立つのかの理論的裏付け

今日の自然言語処理勉強会@東京にて、Zipf則(ベキ分布)の理論的裏付けとして、ランダムにアルファベット+空白を生成、それを空白区切りの「単語」と考えると、それらの単語の頻度分布が Zipf に従うんだよ、的なお話が FSNLP に書いてあった。 へーで終わ…

自然言語処理勉強会@東京 第1回 の資料

本日の tokyotextmining こと 自然言語処理勉強会@東京 第1回 で話す「Webページの本文抽出 using CRF」の資料(自己紹介は除く)です。 以前、Ruby で作った本文抽出モジュール を機械学習の技術を使って作り直してみたら、というお話。 CRF は Conditional …

Pythonでクロージャの列を作る

Pythonで lambda を使ってクロージャの列を作りたいときって、例えばCRFの素性を書くときとかによくあるよね? でも以下のように書くと、クロージャの中の label が全部同じ値になってしまってハマる。 # A, B, C のそれぞれと一致するかどうか判定する列を…

gihyo.jp で機械学習の連載を始めました

gihyo.jp で「機械学習 はじめよう」という、機械学習を紹介する連載を始めました。 本日第1回が公開されています。 「機械学習 はじめよう」第1回 機械学習 ことはじめ http://gihyo.jp/dev/serial/01/machine-learning/0001 今回は概要的なお話。次回から…

不自然言語処理コンテストのコーパスで乱数作文

Baidu さんの不自然言語処理コンテスト( http://www.baidu.jp/unlp/ )が始まったそうで。 5-gram までのコーパスも配布ということでとりあえず応募するしないはおいといてダウンロードダウンロード……。 2-gram でマルコフ連鎖で文章生成って誰でも考えるよな…

IBISML / Latent Dynamics 研究会

6/14〜16 にかけて、IBISML と Latent Dynamics 研究会 に のこのこ行ってきた。 招待講演は超豪華顔ぶれ……というのは受け売り。この界隈にまだまだ詳しくないもんで(苦笑)。 「機械学習」が広い分野を横断していることを象徴して、様々な分野のお話が聞けた…

numpy で数式を実装する

こちらもどうぞ。 第2回 Tokyo.SciPy で「数式を numpy に落としこむコツ」を発表してきました - Mi manca qualche giovedi`? numpy は R と同じように出来ると書いたけど、特にループを出来るだけ廃したければ、いろいろコツが必要。 しばらく放っておいた…

隠れマルコフ実装してみた。

PRML 13章読んで、隠れマルコフモデルを実装してみた。今回は Python + numpy の習作も兼ねている。 http://github.com/shuyo/iir/blob/master/sequence/hmm.py 今回実装してみたアルゴリズムは以下の通り。数字は PRML の章番号。 まあなんて盛りだくさん。…

ハイブリッドモンテカルロをもっと試してみた

ハイブリッドモンテカルロ試してみた。 - Mi manca qualche giovedi`? の続き。 PRML 読書会 #15の真っ最中に取り急ぎで書き散らかしたコードだったので、Metropolis-Hastings で決まる棄却もやってないし、もうちょっと別の確率分布でも試してみたい。 とい…

「パターン認識と機械学習(PRML)」 読書会 #15 12章 連続潜在変数

毎度 「パターン認識と機械学習(PRML)」 読書会 #15(6/6開催@ECナビさん) に のこのこ行ってきた。 おつかれさまでした>各位。今回は 11章の残り(ハイブリッドモンテカルロ)と12章の主成分解析(12.3 まで)。 自然言語処理とはどちらもあんまり近くない…

ハイブリッドモンテカルロ試してみた。

PRML読書会でなんかうまくいかない的な話になったので、ちょっと書いてみた。 p(z) = N(0,1) としている。 # Hybrid Monte Carlo sampling N <- 1000; # number of sampling leapfrog_count <- 100; leapfrog_epsilon <- 0.01; # p(z) = N(0,1) = exp(-z^2/2…