機械学習

Multinomial DPMを実装してみた

ちょっと前に実装してたんだけど、メモを書くがてら公開してみる。やりたいこととしてはnested Chinse Restaurant Processまで行きたいんだけど、ノンパラベイズ初心者なので一番取りかかりやすいであろうDirichlet Process Mixture(DPM)を文書モデルでやっ…

DPMがなんだかよく分からなくなってきたのでメモ

分かったのは俺がよく分かってなかったってこと。相変わらず自分にしか分からないメモ。タイプするのが面倒なので紙のメモをスキャンしたものをアップしておく。はパラメータの次元上のK個棒が立っているようなものを考えて、その棒が立っている位置によって…

Hierarchical Dirichlet Processに関するメモ

自分用メモ。例によってすげー基本っぽいことを書いていく。HDPの前のDP関係は昔ちょっとメモ書きを書いている。 www.yasuhisay.info全体的なこと 客はdocument levelでCRPしていく 料理はcorpus levelでCRPしていく(!) HDPはこの2段階(というか2つ)のCRPで…

FOBOSを使ってL1正則化SVM + L1正則化ロジステック回帰を実装しました

というか一ヶ月前くらいに実装してたんですけど、コード公開してなかったというだけです。 GitHub - syou6162/fobos news20のデータ使って遊んでみたりしていて、元々は100万次元以上あったものを正則化かけまくって次元を1000くらいに落としても精度はほと…

ノンパラベイズのあれこれ

自分用メモ。超基礎的なこと。書くのが躊躇されるレベルだが、書かないと忘れる。全部は書かない、自分が必要なところだけ。ディリクレ過程(Dirichlet Process; DP)を使ったようなモデルを自分で実装する必要が出てきた。今までは必要でなければ必ずしもDP使…

#5 Hierarchical topic models and the nested Chinese restaurant process

今さら感あるかもしれないけど読む。DPはデータの複雑度に応じてクラスタ数を決めるようなノンパラなモデルだが、普通の(flatな)クラスタの構造しか学習できない。それに対し、この論文で説明されるNest Chinise Restaurant Process(nCRP)とかHierarchical L…

FOBOSを使ってSVMやロジステック回帰を実装しよう!!!

原稿も出したし、次のネタのために論文読んでたけど全然分からないし(ダレカタスケテ!!!)、3連休だし、現実逃避したい!!!ということでFOBOSの論文を読んだりしていました。なんでFOBOSかっていうと、就活の面接のときに「SVMとか(使った、じゃなくって)実装…

練習がてらC++でHMMのコードを書いた

いわゆるお勉強的なコードなので特に新しいところはないです。HMMをベースにしたモデルを作る必要が(たぶん)出てきそうなんですが、そういえばHMMの前向き後ろ向きアルゴリズムの付近とか実装したことねぇやべぇと思ったので書いてみました*1。系列の長さが1…

論文100本ノックの感想&独断と偏見に満ち溢れた今年読んだ中で面白かった論文紹介

100本いってないじゃん!! いつまで高見の見物してるんですか??? 目を通してるConference その他 LDA関係 LDA自体について LDAをベースにした応用モデル 形態素解析、分かち書き ノンパラベイズ その他 クラスタリング 最適化 教師なし学習 今年の1月1日から…

#73 Correlated topic models

David M. Blei and John Lafferty, In Lawrence K. Saul, Yair Weiss, and L´eon Bottou, editors, Advances in Neural Information Processing Systems 17, Cambridge, MA, 2005. MIT Press.今日のDMLAにて紹介。LDAのトピック間に相関を入れたようなモデル…

HMMのスケーリング係数

HMMを実装する上で考えなければならない問題点HMMにおけるパラメータ推定はフォワードバックワードによって効率的に計算される。しかし、実際に計算機上でこのアルゴリズムを動かそうとすると気を付けなければならないことがある。再帰式 の右辺のそれぞれの…

#69 Crouching Dirichlet, Hidden Markov Model: Unsupervised POS Tagging with Context Local Tag Generation

Taesun Moon, Katrin Erk, Jason Baldridge, Proceedings of EMNLP-2010.言語によらず単語には機能語と内容語のようなものが存在するが、教師なしpos taggingでよく使われるHMMではこのような機能語、内容語の違いを捉えられない。このモデル(CDHMMとHMM+)で…

#67 Joint Training and Decoding Using Virtual Nodes for Cascaded Segmentation and Tagging Tasks

Xian Qian, Qi Zhang, Yaqian Zhou, Xuanjing Huang, Lide Wu, in Proc. of EMNLP 2010, Massachusetts, USA.Joint Learningでword segmentationとNERを一緒にやる話。既存手法にDynamic Conditional Random Fields(DCRFs)というものがあるが、Figure 1のよ…

Polya分布のパラメータ最適化

Polya分布とは多項分布の共役事前分布にディリクレ分布を取って、ディリクレ分布のパラメータを積分消去するとPolya分布が出てくる。Latent Dirichlet Allocation(LDA)に代表されるトピックモデルでよく登場する確率分布。ガンマ関数を使って綺麗に書きくだ…

ディリクレ分布、ディガンマ関数、指数分布族、十分統計量

東京ではPRML読書会の最終回があっていたらしいですが、こちらはすごく初歩的な話。LDAのinferenceをGibbs samplingでやる話とかを紹介したので、こちらは変分ベイズでやるほう(というか元論文)を読んでいた。変分ベイズはいいんだけど、途中で出てくる (つ…

経験ベイズと周辺尤度

経験ベイズは以前勉強したことがあったので、前よりは余裕を持って聞けた。 www.yasuhisay.info 「経験ベイズは何をするものか?」ということに一言で答えようとすると、「よりよいハイパーパラメータを決定するために周辺尤度最大化を用いる手法」ということ…

前向きアルゴリズム、Vitebiアルゴリズム

Viterbi書くの何回目だろ。。。週末にはバウムウェルチ(Baum-Welch)のアルゴリズムこと前向き後ろ向きアルゴリズムを書きたいところ。 www.yasuhisay.info # -*- coding: utf-8 -*- # 確率的言語モデル(東京大学出版)第4章(隠れマルコフモデル) require 'pp'…

変分ベイズ

natural conjugate priorと変分ベイズが一緒に出されてどっちも初めての人はついていけるのだろうかと思いつつ(授業的にはどっちかが分かってくれるといいなくらいだろうか)。エレベータで論生の人が「他の研究室の人たちはついていけるんだろうか」と話して…

情報幾何学応用

セミパラメトリック推定がメインの話。双対平坦な統計モデル 2種類の接続 e接続 m接続 最尤推定はm射影をやっている モデルがExponential Familyなら一意に決まる 高次推定理論 平坦でないモデルは曲率とかの高次の項を見ないといけない emアルゴリズムセミ…

情報幾何学

曲った空間を考える 局所的には線形空間と捉えられる 双対接続を用いた微分幾何学(???) 内積で、行列を挟んだものを「計量」と呼ぶ 共役勾配法の共役方向を作るときに出てきたやつ 別の基底ベクトルを導出 さっき作った行列Gの逆行列になっている そういうベ…

強化学習

よく分からないです><。 半教師あり学習 No Free Lunch モデルの誤りが大きな誤差を生む クラスタリングを使うこともある この辺は知ってるので、メモは略 Self-Training Co-Training Transductive SVM 強化学習 マルコフ決定過程 状態を知覚 政策で行動を…

多層パーセプトロンとSVM

http://hawaii.naist.jp/~kazushi/lec/tls/l3.pdf パーセプトロンの多層化 多層化というより、前処理というようなイメージ ニューラルネットは意識しているけど... 結合重みをランダムに生成 資料の赤のほうをランダム、青のほうはパーセプトロンで学習 汎化…

#23 Map-Reduce for Machine Learning on Muiticore

Olukotun, NIPS-2006.id:mamorukさんによる紹介。Multicore上でのMap-Reduceを機械学習でやる話。「SVMを並列でやれるようにしたよ(pSVMとかcascaded SVMとか)」とかそういうものではなく、Statistical Query modelという範疇にあるモデルのクラスでsummatio…

学習アルゴリズムの学習曲線

パーセプトロンの収束定理くらいまでかな?と思っていたらあんまり知らないような内容まであってびっくりした。アルゴリズムに対する学習曲線というものを導入し、統計力学の手法を使って解析する。次元数と例題数を無限大に飛ばすと0に行くんだが、問題はそ…

FSNLP 2.2の資料を公開します

研究室の自然言語処理の基礎勉強会でFSNLPを使っていて、今週が自分の担当のところ。2.2章の情報理論。情報理論のテストも終わったばかりということでみんなの頭の中に記憶があるときでよかったです。言語モデルのほうとかは早めにやっていたほうがいいと思…

CRF++の自分用メモetc

論文読んだりしているけど、実際にCRFを動かしたことがなかったり...ということで動かしてみる。動かすためにいくつか理解しないといけないことがあるので自分用メモ。 CRF++: Yet Another CRF toolkit 素性テンプレート Unigram まず簡単そうなところから。…

PRML読書会#12に行ってきた

C.M.ビショップ「パターン認識と機械学習(PRML)」読書会(第12回) : ATND きれいにまとめてる時間がないので、あとから自分が見て分かるだけのメモ。 K-meansは混合ガウスをEMでやったときのとある極限と考えることができる ハード割り当て 図9.10の下の図…

ollのRuby bindingを書いてみた

「ollはテキストファイル食わせれば、すぐ実行できるし必要ないかなー」とか思いながらも気がついたらなんか作ってました。 GitHub - syou6162/oll-ruby: wrapper for oll(http://code.google.com/p/oll/) READMEにも書いたけど oll = Oll.new("CW") oll.add…

PRML読書会#11に参加しました

C.M.ビショップ「パターン認識と機械学習(PRML)」読書会(第11回) : ATND Logを見ていると半年振りくらいの参加だったようです。今回の主な内容はグラフィカルモデリングということでid:sleepy_yoshiさん、id:nokunoさん、id:n_shuyoさんが説明してください…

グラフィカルモデル

ベイジアンネットワーク同時分布を条件付き分布の積として以下のように分解する。 この同時分布は個のノードを持つ有効グラフとして表現できる。このように条件付けされたグラフは自分より小さい番号から向かってくるリンクを持つ。また、全連結である(ただ…