et, al の検索結果:

ロジスティック回帰+確率的勾配降下法

…ris[5]=="setosa",1,0), ifelse(iris[5]=="versicolor",1,0), ifelse(iris[5]=="virginica",1,0) ) N <- nrow(xlist) # データ件数 K <- ncol(tlist) # クラス数 次は基底関数を決める。手始めに1次項+バイアスとしてみよう。 下のように書けば、phi のように定義した特徴関数を xlist の各行に適用して、N×M のいわゆる計画行列 PHI を生成すること…

「はじめての生成文法・後編」を TokyoNLP で発表してきました。

…assembly method という、3つの大きさの違うカップを重ねるときに最初に小さいカップを中くらいのカップに入れ、重なったそのカップを一番大きいカップに入れる操作と対応し、その subassembly method はヒトと言語訓練を受けた一部のチンパンジーしか持っていないという研究があり、この機能こそが言語器官の系統発生のカギだろうといった考察が( Evo-Devo とかどうとか)……。ほぅら、これだけで+15分。 GB 理論のフィルタについても「そういうものがあっ…

ベイズの公式は地味に難しいので、確率の乗法公式を2回使おう

… fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.parentNode.insertBefore(js, fjs); t._e = []; t.rea…

階層ディリクレ過程を実装してみる (2) HDP-LDA の更新式を導出・前編

…al Dirichlet Process(階層ディリクレ過程, HDP) の Collapsed Gibbs sampling 推論を行う場合の更新式を導出していく。 まず今回は一般の HDP を CRF に落とすところ。次回はそこから full conditional を導出([Teh+ 2006] にある および t や k の事後分布を導出)、そして次々回あたりで、それらの更新式を HDP-LDA に当てはめた場合(つまり前回記事の base measure H と e…

階層ディリクレ過程を実装してみる (1) HDP-LDA と LDA のモデルを比較

…al Dirichlet Process(HDP, 階層ディリクレ過程) を実装するのに必要な式を導出しつつ、実装してみるお話。 参照するのはこちらの論文。 [Y.W.Teh, M.I.Jordan, M.J.Beal & D.M.Blei. JASA2006] Hierarchical Dirichlet Processes http://www.gatsby.ucl.ac.uk/~ywteh/research/npbayes/jasa2006.pdf しかし全部拾っていく…

R で識別器を作ってみるのに必要な散布図の書き方・正規化の方法(iris データセットを例に)

…iris dataset を例に「識別器を試作するための準備」について説明していこう。 iris dataset は、3品種(setosa, versicolor, verginica)のユリの花それぞれ50本について、花の萼(がく)の長さと幅、花弁の長さと幅を測ったもの。 iris はデータがきれいに分かれているので、どんな識別器に食わせてもそこそこ良い結果が出る。初心者が達成感を得るのに最適(笑)。 R での iris データセットの利用は簡単。なにしろ、iris という…

LDA の Collapsed Gibbs サンプリングの全条件付分布を導出してみる

…nt Dirichlet Allocations(LDA) の実装について - 木曜不足 にも出てくるこの式 を導出してみる。 この式は LDA の Collapsed Gibbs sampling で使う全条件付分布(full conditional)。 もし普通のギブスサンプリングだったら、観測されていない全ての確率変数、つまり Z だけではなくθやφについても同様に全条件付分布を構成して、そこからサンプリングを繰り返すことが必要になる。*1 そこで、θとφについては積分…

はじめての生成文法・前編 - #TokyoNLP 5

第5回 自然言語処理勉強会@東京 にのこのこ行ってきました。 いつもいつもありがとうございます>主催の @nokunoさん、会場の ECナビさん(@ajiyoshiさん)、発表者、参加者の皆さん 今回も、いつものように新境地で「生成文法」について発表させてもらった……という予定だったのだが、資料作りが間に合わず*1&分量がインフレを起こして、急遽前後編にわけさせてもらったら、生成文法が出てくる直前で「次回に続く」。ほんとすんません&次回もよろしく。 【追記】 後編はこちら。 …

LDA の評価結果+Collapsed Variational Bayesian の初期化における工夫

…nt Dirichlet Allocations の Python 実装 - 木曜不足 Latent Dirichlet Allocations(LDA) の実装について - 木曜不足 LDA で実験 その1:stop words の扱い方でどう変わる? - 木曜不足 LDA で実験 その2:初期値を逐次サンプリングにしてみた - 木曜不足 LDA の Collapsed Variational Bayesian 推論 - 木曜不足 CVB0 では γ_ijk の更新式が以下…

LDA の Collapsed Variational Bayesian 推論

…nt Dirichlet Allocations(LDA) の実装について - 木曜不足 にて書いたのだけど、今回はそれとは別の Collapsed Variational Bayesian (以下 CVB) で推論を行う話。 まず、LDA の原論文である [Blei+ 2003] では Variational Bayesian (変分ベイズ、以下 VB)で推論を行っていた。 これは LDA の確率変数 z, θ,φ に対し(観測変数 x は除く)、まず真の事後分布 q(z,…

LDA で実験 その2:初期値を逐次サンプリングにしてみた

…K, V)) + beta # word count of each topic and vocabulary self.n_z = numpy.zeros(K) + V * beta # word count of each topic self.N = 0 for m, doc in enumerate(docs): self.N += len(doc) z_n = [] for t in doc: p_z = self.n_z_t[:, t] * self.n_m_z[…

ディリクレ分布のパラメータが0のとき

…る。次に、β分布 Beta(x;a,b) = について、 a→0 のとき Γ(a)→∞ ゆえ Beta(x;a,b)→0 (x>0) つまり a→0 のとき Beta(x;a,b) はディラックデルタ δ_0 (つまり「積分して1 & x!=0 での密度関数の値→0 」)に収束する。同様のことがディリクレ分布の場合も言える。 よって a_K→0 のとき、x_1,……,x_{K-1},x_K は K-1 次のディリクレ分布 Dir(a_1,……,a_{K-1}) と p(x_K…

CICLing 2011 行ってきました

…ing 2011 retrospective | Shuyo's Weblog そっちに書いてないことをちらほら。 ラス2のパネルディスカッションのテーマが "Papers must be accompanied by software and data?"。よく聞く話だけど、各国の研究者がこんだけ集まった場だとどういう話になるんだろう? とちょっとワクワク。 座長のアレクサンダーさんが「 science は再現できるもの」と前振りではっきり言ってしまったので、「個別論はもち…

LDA で実験 その1:stop words の扱い方でどう変わる?

…ha=0.5 --beta=0.5 python ./lda.py -c 0:100 -s 1 -i 100 -k 20 --alpha=0.5 --beta=0.5 python ./lda.py -c 0:100 -s 2 -i 100 -k 20 --alpha=0.5 --beta=0.5 sw除外 swあり swを1トピックに 3857.91 1266.47 1285.07 3881.76 1275.33 1288.23 3895.36 1275.36 1288.2…

Mahout の開発環境を Maven+Eclipse で作る (3) Eclipse で Hadoop の開発環境を作る

…/commons-net-1.4.1.jar"/> <classpathentry kind="lib" path="hadoop-0.20.2/lib/kfs-0.2.2.jar"/> <classpathentry kind="lib" path="hadoop-0.20.2/lib/jets3t-0.6.1.jar"/> <classpathentry kind="lib" path="hadoop-0.20.2/lib/servlet-api-2.5-6.1.14.j…

Latent Dirichlet Allocations(LDA) の実装について

…nt Dirichlet Allocations in Python" の続きで実験結果を載せようかと思ったけど、先にやっぱりもうちょっと LDA を説明しておこう。LDA の初出は [Blei+ 2003] Latent Dirichlet Allocation 。 ただし [Blei+ 2003] で "LDA" としているのはトピック-単語分布がただの多項分布(事前分布無し)のもの。"LDA" としてよく目にするトピック-単語多項分布にディリクレ事前分布が入ったものは …

Latent Dirichlet Allocations の Python 実装

…nt Dirichlet Allocation"。文書中の単語の「トピック」を確率的に求める言語モデル。 「潜在的ディリクレ配分法」と訳されていることもあるが、その名前だと「それってなんだっけ?」という人のほうが多そうw。 各単語が「隠れトピック」(話題、カテゴリー)から生成されている、と想定して、そのトピックを文書集合から教師無しで推定することができる。特徴は、果物の apple と音楽の apple とコンピュータ関連の apple を区別することが出来る(ことが期待され…

サイン入り「小悪魔女子大生のサーバエンジニア日記」いただいちゃいました

id:gothedistance さんこと、ござ先輩が本日サイボウズ・ラボに遊びに来てくださいました。お忙しいところありがとう〜。 で、インターネットで技術的な仕事をしてても、ルーティングとか名前解決とかよくわかんない人必読と巷で話題の「小悪魔女子大生のサーバエンジニア日記」をいただいちゃいました。小悪魔女子大生のサーバエンジニア日記 ――インターネットやサーバのしくみが楽しくわかる作者: aico,株式会社ディレクターズ,村井純出版社/メーカー: 技術評論社発売日: 201…

Mahout の開発環境を Maven+Eclipse で作る (2) Hadoop セットアップ

…ping; cacheTimeout=300000 11/02/08 18:14:27 WARN conf.Configuration: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.idおかしな WARNING がでる。これは 0.22 では解消されるとか。いや、こんなところでこのレベルのインターフェース不整合とかないわ……。 ちなみにこの種の WARNING は他にも何種類もあって、しか…

自然言語処理(機械学習) vs エンジニア

…もしろかった。Togetter でのまとめがこちら。 NL研 #signl200 まとめ(その2) - Togetter 単語のいくつかは残念ながらわからないが(笑)、「自然言語処理も機械学習も、どちらのアカデミックの世界にも身を置いたことのない門外漢のエンジニア」という立場で普段考えていることといろいろオーバーラップしている部分、齟齬を起こしている部分があって、思い出してはこれを読み返している。 まだあれこれ思い悩んでいる部分でもあるので、多分まとまらないし、明日にはまた違…

Mahout の開発環境を Maven+Eclipse で作る (1)

…は、"Maven Getting Started Guide" と "Guide to using Eclipse with Maven 2.x" を読んでおけばいい感じ。 Maven – Maven Getting Started Guide http://maven.apache.org/guides/mini/guide-ide-eclipse.html ポイントは Maven 3 でも Maven 2 Repository ってところ。 ちなみに "Maven Get…

日経ソフトウエア3月号に機械学習の記事を書かせていただきました

本日 1/24 発売の日経ソフトウエア3月号の特集「クラウド&スマホ時代の3大コア技術」の機械学習の記事を書かせていただきました。日経ソフトウエア 2011年 03月号 [雑誌]作者: 日経ソフトウエア出版社/メーカー: 日経BP社発売日: 2011/01/24メディア: 雑誌購入: 10人 クリック: 82回この商品を含むブログ (5件) を見る少し背景的なことを。 この記事は以下のような内容をエンジニア1年生や高校生にもわかる読み物として書かせてもらいました。 3番目は紙…

第4回 自然言語処理勉強会@東京 #tokyonlp

…oNLP - Togetter 詳しい内容は nokuno さんによるまとめ を参照してもらって、ここではとっても短く紹介&感想。 N-gram Language Model for Speech Recognition by @y_shindohさん 音声認識と言語モデル。言語モデルとしての性能と認識精度はまた別だよ、が一番響いた。 デモが動いていた。「料理のレシピで学習させたから、料理の話題なら正しく認識できる」ということがきちんと示せていたことにももちろんすごく感心した…

統計的機械学習セミナー (1) sequence memoizer

…ses [Teh 2006] A Bayesian Interpretation of Interpolated Kneser-Ney [Wood+ 2009] A Stochastic Memoizer for Sequence Data [Gasthaus+ 2010] Lossless Compression based on Sequence Memoizer [Gasthaus+ 2010] Improvements to the Sequence Memoizer

機械の代わりに人間が学習入門 - #tokyowebmining 9

本日 1/16(日) にニフティさんにて開催された 第9回 データマイニング+WEB 勉強会@東京 にのこのこ参加してきました。主催の @hamadakoichi さん、運営の @doryokujin さん、講演者、参加者、そして会場を提供して下さったニフティさん、各位ありがとうございました。 前回参加したときに、はまださんに「機械学習の全体像を話して」という無茶振りされて、うーん直球でそれにぶつかるのはさすがに難しすぎる。いろいろ考えてみて、そっちの専門じゃあないエンジニア…

有名どころな機械学習手法の年表

…どねw 1805 Method of Least Squares 1901 PCA (Principal Component Analysis) 1905 Random Walk -1925 Logistic Regression 1936 Fisher's Linear Discriminant Analysis 1946 Monte Carlo Method 1948 n-gram model 1950 RKHS (Reproducing Kernel Hilbert S…

独断と偏見によるノンパラ入門

…"Non-parametric statistics" を見たら、なんか意味が4種類くらい書いてあるし。じゃあ名前分けろよ。en.wikipedia.orgとりあえずここで言う「ノンパラ」とは、変数の個数決めなくていい「分布の分布」なメタっぽいやつのこと。つまりディリクレ過程とか、ディリクレ過程とか、そこらへん。 「あー、ノンパラベイズね」だけど、ベイズさんは「炎上上等とネタ論文投稿したら案の定炎上しちゃった。てへ。でももう 250年くらい経つってのにまだ燃えてるとか、一部の…

言語判定プラグイン for Apache Nutch

…Language Detection Library for Java プラグイン本体はとても小さいので、言語判定ライブラリに同梱されている。 上のドキュメントの通りに設置すれば、以下のように様々な言語での判定が出来るようになる。 利用方法は上のドキュメントを読んでもらうとして、ここでは言語判定プラグインはどのように作られているか、という話をしよう。 plugin.xml Apache Nutch のプラグインと言語判別 では、Nuth に標準付属している言語識別プラグインは…

NIPS 2010 読み会 まとめ

…se Power Method for Nonlinear Eigenproblems with Applications in 1-Spectral Clustering and Sparse PCA http://www.slideshare.net/niammain/nips-yomikai-1226 id:niam さん。 逆ベキ乗法で最小固有値問題をスパースに解きたい。そこでまず逆ベキ乗法の一般化から始めて、1次の正則化を導入することが出来る枠組みを作る、というお話…

NIPS 2010 論文読み会 / [Ding+] t-Logistic Regression #nipsreading

…2003] Geometry of escort distributions. [Sears 2008] Generalized Maximum Entropy, Convexity, and Machine Learning. [Kuno+ 1993] An outer approximation method for minimizing the product of several convex functions on a convex set. 2. Logisti…