タグ

ブックマーク / sinhrks.hatenablog.com (12)

  • Python pandas プロット機能を使いこなす - StatsFragments

    pandas は可視化のための API を提供しており、折れ線グラフ、棒グラフといった基的なプロットを簡易な API で利用することができる。一般的な使い方は公式ドキュメントに記載がある。 Visualization — pandas 0.17.1 documentation これらの機能は matplotlib に対する 薄い wrapper によって提供されている。ここでは pandas 側で一処理を加えることによって、ドキュメントに記載されているプロットより少し凝った出力を得る方法を書きたい。 補足 サンプルデータに対する見せ方として不適切なものがあるが、プロットの例ということでご容赦ください。 パッケージのインポート import matplotlib.pyplot as plt plt.style.use('ggplot') import matplotlib as mpl m

    Python pandas プロット機能を使いこなす - StatsFragments
  • Python Theano function / scan の挙動まとめ - StatsFragments

    勉強のため たまに Pylearn2 など Theano を使ったパッケージのソースを眺めたりするのだが、theano.scan の挙動を毎回 忘れてしまう。繰り返し調べるのも無駄なので、一回 整理したい。theano.scan の動作は theano.function が前提となるため、あわせて書く。 準備 import numpy as np import theano import theano.tensor as T theano.function まずは Theano における関数にあたる Function インスタンスを作成する theano.function の基的な挙動について。引数はいろいろあるが、特に重要と思われるのは以下の4つ。 inputs : Function への入力 (引数) に対応するシンボル。 outputs : Function 化される式。 upda

    Python Theano function / scan の挙動まとめ - StatsFragments
  • Chainer で Deep Learning: Bokeh で Live Monitoring したい - StatsFragments

    概要 Deep Learning の学習には時間がかかるため、進捗が都度 確認できるとうれしい。その際、テキストのログ出力では味気ないので、リアルタイムでプロットを眺めたい。 いくつかの Deep Learning パッケージではそういった機能 (Live Monitoring) が提供されている。 Undefined Intelligence: Monitoring Experiments in Pylearn2 Live plotting — Blocks 0.0.1 documentation fchollet/hualos · GitHub 同じことを Chainer でやりたい。自分は EC2 を使うことが多いので、リモート環境でも利用できるものがいい。そのため、ここでは Bokeh を使うことにした。 Bokeh とは Bokeh とは、D3.js を利用したブラウザベースのイ

    Chainer で Deep Learning: Bokeh で Live Monitoring したい - StatsFragments
  • Python XGBoost の変数重要度プロット / 可視化の実装 - StatsFragments

    Gradient Boosting Decision Tree の C++ 実装 & 各言語のバインディングである XGBoost、かなり強いらしいという話は伺っていたのだが自分で使ったことはなかった。こちらの記事で Python 版の使い方が記載されていたので試してみた。 puyokw.hatenablog.com その際、Python でのプロット / 可視化の実装がなかったためプルリクを出した。無事 マージ & リリースされたのでその使い方を書きたい。まずはデータを準備し学習を行う。 import numpy as np import xgboost as xgb from sklearn import datasets import matplotlib.pyplot as plt plt.style.use('ggplot') xgb.__version__ # '0.4' ir

    Python XGBoost の変数重要度プロット / 可視化の実装 - StatsFragments
  • Theano で Deep Learning <6>: 制約付きボルツマンマシン <前編> - StatsFragments

    DeepLearning 0.1 Documentation の第六回は 制約付きボルツマンマシン (Restricted Boltzmann Machines / 以降 RBM) 。RBM は オートエンコーダとはまた別の事前学習法。かなり分量があるので、とりあえず元文書 前半のRBM の仕組みまで。 RBM を理解しにくいポイントは 2 つあるかなと思っていて、 この構造 (グラフィックモデル) であるメリットはあるのか? 学習 (Contrastive Divergence) で何をやってんのか? というとこではないかと。最初、自分は 2 がまったくわからなかった。2 は "とりあえずできそうな構造 / 方法でやってみたらなんかうまくいった" 感があって、理由がいまいちはっきりしないところがある。 目次 DeepLearning 0.1 について、対応する記事のリンクを記載。 第一回

    Theano で Deep Learning <6>: 制約付きボルツマンマシン <前編> - StatsFragments
  • Chainer で Deep Learning: model zoo で R-CNN やりたい - StatsFragments

    ニューラルネットワークを使ったオブジェクト検出の手法に R-CNN (Regions with CNN) というものがある。簡単にいうと、R-CNN は以下のような処理を行う。 入力画像中からオブジェクトらしい領域を検出し切り出す。 各領域を CNN (畳み込みニューラルネットワーク) にかける。 2での特徴量を用いて オブジェクトかどうかをSVMで判別する。 R-CNN については 論文著者の方が Caffe (Matlab) での実装 (やその改良版) を公開している。 [1311.2524] Rich feature hierarchies for accurate object detection and semantic segmentation github.com が、自分は Matlab のライセンスを持っていないので Python でやりたい。Python でやるなら 今

    Chainer で Deep Learning: model zoo で R-CNN やりたい - StatsFragments
  • Python pandas 関連エントリの目次 - StatsFragments

    このブログ中の pandas 関連のエントリをまとめた目次です。 最近 pandas 開発チーム と PyData グループ の末席に加えていただき、パッケージ自体の改善にもより力を入れたいと思います。使い方についてご質問などありましたら Twitter で @ ください。 目次につけた絵文字は以下のような意味です。 🔰: 最初に知っておけば一通りの操作ができそうな感じのもの。 🚧: v0.16.0 時点で少し情報が古く、機能の改善を反映する必要があるもの。 🚫: 当該の機能が deprecate 扱いとなり、将来的に 代替の方法が必要になるもの。 基 簡単なデータ操作を Python pandas で行う 🔰 Python pandas でのグルーピング/集約/変換処理まとめ 🔰 また、上記に対応した比較エントリ: R {dplyr}, {tidyr} Rの data.tab

    Python pandas 関連エントリの目次 - StatsFragments
  • Python networkx でマルコフ確率場 / 確率伝搬法を実装する - StatsFragments

    ここ 1ヶ月にわたって 聖書 DeepLearning 0.1 Documentation を読み進め、ようやく 制約付きボルツマンマシン の手前まできた。 制約付きボルツマンマシン (RBM) の解説 には RBM = マルコフ確率場 ( Markov Random Field / MRF ) の一種だよっ、と しれっと書いてあるのだが マルコフ確率場とはいったい何なのかは説明がない。マルコフ確率場 <マルコフ・ランダム・フィールド> は用語もカッコイイし結構おもしろいので、 Python でサンプルを書いてみる。 補足 Python では PyStruct というパッケージがマルコフ確率場 / 条件付き確率場 ( Conditional Random Field ) を実装しているため、実用したい方はこちらを。このパッケージ、ノーマークだったがよさげだなあ。 マルコフ確率場とは グラフ

    Python networkx でマルコフ確率場 / 確率伝搬法を実装する - StatsFragments
  • StatsFragments

    著者の松浦さんから「StanとRでベイズ統計モデリング」をいただきました。ありがとうございます! 書籍では Stan の R バインディングである RStan を利用していますが、Stan には Python 用の PyStan もあります。松浦さんが書籍 5.1節の PyStan での実行例を書かれています。 statmodeling.hatenablog.com 補足 PyStan については過去にも書いた内容があります。 sinhrks.hatenablog.com 同じように、「StanとRでベイズ統計モデリング」の内容を Python で実施してみました。 11.3 ゼロ過剰ポアソン分布 以降、書籍 "11.3節 ゼロ過剰ポアソン分布" の流れに沿って Python のスクリプトを記載します。ロジックや処理自体の説明は書籍をご参照ください。データと Stan のスクリプトは Gi

    StatsFragments
    aidiary
    aidiary 2014/12/19
    Deep Learning関係の記事が多くて面白そう
  • Theano で Deep Learning <2> : 多層パーセプトロン - StatsFragments

    Python Theano を使って Deep Learning の理論とアルゴリズムを学ぶ会、第二回。 目次 DeepLearning 0.1 より、 第一回 MNIST データをロジスティック回帰で判別する 英 第二回 多層パーセプトロン (今回) 英 第三回 畳み込みニューラルネットワーク 英 第四回 Denoising オートエンコーダ 英 第五回 多層 Denoising オートエンコーダ 英 第六回の準備1 networkx でマルコフ確率場 / 確率伝搬法を実装する - 第六回の準備2 ホップフィールドネットワーク - 第六回 制約付きボルツマンマシン 英 Deep Belief Networks 英 Hybrid Monte-Carlo Sampling 英 Recurrent Neural Networks with Word Embeddings 英 LSTM Netw

    Theano で Deep Learning <2> : 多層パーセプトロン - StatsFragments
  • Deep Learning カテゴリーの記事一覧 - StatsFragments

    この記事は Chainer Advent Calendar 2015 17 日目の記事です。 はじめに サイズが大きいデータを Deep Learning すると学習に時間がかかってつらい。時間がかかってつらいので並列処理して高速化したい。 並列化するのに良さそうなパッケージないかな? と探…

    Deep Learning カテゴリーの記事一覧 - StatsFragments
  • Theano で Deep Learning <1> : MNIST データをロジスティック回帰で判別する - StatsFragments

    概要 ここ数年 Deep Learning 勢の隆盛いちじるしい。自分が学生の頃は ニューラルネットワークはオワコン扱いだったのに、、、どうしてこうなった?自分もちょっと触ってみようかな、と記事やらスライドやら読んでみても、活性化関数が〜 とか、 制約付き何とかマシンが〜(聞き取れず。何か中ボスっぽい名前)とか、何言っているのかよくわからん。 巷には 中身がわかっていなくてもある程度 使えるパッケージもいくつかあるようだが、せっかくなので少しは勉強したい。 Python 使って できんかな?と思って探してみると、すでに Theano というPython パッケージの開発チームが作った DeepLearning Documentation 0.1 という大部の聖典 (バイブル) があった。 当然だがこの文書では Theano の機能をいろいろ使っているため、ぱっと見では 何をやってんだかよく

    Theano で Deep Learning <1> : MNIST データをロジスティック回帰で判別する - StatsFragments
  • 1