xiangze's sparse blog

機械学習、ベイズ統計、コンピュータビジョンと関連する数学について

python

Edwardを試してみた(1) MCMCでベイズ線形回帰

今更ながら確率的プログラミングのライブラリEdwardを試してみました。 http://edwardlib.org/tutorials/ 確率的プログラミング 統計的なモデルの(ベイズ)推定が出来るという点でstanやpymcと似ていますが、Edwardはより広く確率的プログラミング(Probabilis…

論文コーパスの次元圧縮とLDAによるトピックの関係の可視化

機械学習の方法として教師なし学習で得られた量を特徴量として教師あり学習で使うという方法があります。 OnlineNewsPopularityの列の中にもLDAで推定されたトピックがあるようです。文書データもOnlineNewsPopularityと同じようにLDAで得られた量を使って機…

KerasとskoptでのBayesian Optimization

使ったアルゴリズム(random forest, neural net, Bayesian Optimization)とデータ(OnlineNewsPopularity)はTJOさんのブログ記事 と全く同じでPythonのライブラリscikit-learnのrandom forestとKeras, bayesianを使っているところが異なります。

最近のpymcの進展(ノンパラベイズ)

pymcはpythonの文法の枠内で統計モデルが書けてMCMCを実行することで推定が出来るライブラリです。 最近開発に色々な進展があったので勉強しています。 https://pymc-devs.github.io/pymc3/

RBMのtheanoコード解説

deeplearning.netのRBM(Restricted Boltzmann Machine)のTheanoでの実装面からの説明です。RBMのアルゴリズムについてはsinhrksさんが Theano で Deep Learning <6>: 制約付きボルツマンマシン <前編> - StatsFragments に書かれています。説明の流れはdeepl…

Theanoのshared変数についてメモ

shared変数(共有変数)の使いどころとscanのloop型構文との使いわけが分からなかったのでメモ

emceeを試してみた

pythonのMCMCライブラリとしてemceeというのがあるらしいので試してみました。 Paralell tempering(レプリカ交換モンテカルロ法)が使えるの他のライブラリとの大きな違いになります。http://dan.iel.fm/emcee/current/

theanoでwhileなど

sinhrksさんがtheanoでのloopについてまとめていたので その落ち穂拾いです。Python Theano function / scan の挙動まとめ - StatsFragmentssinhrks.hatenablog.com

Python for Financeという本

ipython notebookを使って出版されたらしいPython for Financeという本を読みました。 numpy, scipy, pandas, PyMC3をはじめとしたPythonの数値計算、解析系のパッケージを使った金融工学の計算事例と自作ライブラリについての紹介になっています。

RNN-RBMによる旋律の予測と生成と音楽情報処理に関する紹介

かなり以前(2012年)のものになりますが、deeplearning.netでRecurrent Neural Network(の一種)のTheanoによる実装とMIDIデータからの旋律予測に関する論文の実装が公開されていたの紹介します。またその他機械学習による音楽情報の解析に関して少し紹介しま…

承認欲求.ipynb

主にipython notebookです。

ハミモン、ゲットだぜ!

Hamilton Monte-Carlo法(Hybrid Monte-Carlo法)はMCMCによる分布関数のサンプリングを高速化させる手法の一つであり、近年StanやTheanoなど統計的解析を行うためのプログラミング言語に実装させており、注目を集めています。 今回は混合ガウス分布に対するそ…

pythonでGPUとMCMC(とR)

GPUでモンテカルロ法の計算をしたくなったりした場合には普通CUDA,OpenCLを使うことになります。 C++でプログラミングする必要があるのですが、変数の確保、解放などで記述が長くなりがちです。pythonを用いると記述を簡潔にできるところが多いらしいので関…

IPython Notebookとnbviewerを使ってみた

IPython Notebookが評判になっているので使ってみました。書いたコードをgithub,gistに上げるとnbviewerできれいに表示してくれるそうなので試してみました。

1行でディープラーニングできなかった(theanoとH2O)。

pip install theanoimport urllib2 exec(urllib2.urlopen("https://gist.githubusercontent.com/xiangze/90c2a215b46dad907329/raw/onelineardA.py").read())data(MNIST)のダウンロードではまったら頑張りましょう。 元ネタ(H2O) BOD Rで一行でディープラー…

n番煎じマンが文法圧縮による完備辞書を写経しました(Python)。

id:echizen_tmさんによる文法圧縮を使った完備辞書(簡潔ビットベクトル)を作ったに感銘を受けたので写経しその理解を試みました。 アルゴリズムは同じくRe-pairでほとんど流れは同じです。Pythonのほうが良いという人は読んでください。

Python,OpenCVでの駄コラ生成

Pythonで駄コラを作ってみよう(としています)が面白そうだったので書いてしまいました。顔の部分を別の画像に入れ替えるだけです。検出は完全ではないです。実写を使う場合は学習データを入れ替えましょう。 Next step サーバー、botにする Reference 【Op…

あなたとpystan,いますぐapt-get

sudo apt-get update sudo apt-get install python-numpy sudo apt-get install cython sudo pip install pystan #additional libraries sudo apt-get install build-essential python-dev python-setuptools python-scipy libatlas-dev libatlas3-base sudo…

Pystanで自然言語処理 scikit.learnのdatasetで試す

scikit.learnは様々な機械学習のアルゴリズムのみならず、データセットも充実しています。stanのpythonラッパーpystanでこれを利用し、Stan manualのLDAのコードの性能を評価することを行いました。 20 newsgroupsというデータセットは名前の通りUsenetの20…

Python, Sympyを用いたVanishing Component Analysisの実装(と動作)

未だ挙動が怪しいですが、Pythonの数式処理ライブラリSympyを用いて Vanishing Component Analysis(論文pdf)を実装しました。 Sympyは可読性が高いのが利点ですが、速度を考慮した実装ではないため特に次数の高い多項式まで求めようとした場合にどんどん動作…