2017/02/20

scikit-learn のサンプルを2つ動くようにした

今日は、 Ruby Business Users Conference に向けた開発の仕上げとして scikit-learn のサンプルを2つ動くようにした。1つは ExtraTreesClassifier特徴量の重要度を求めるやつ、もう1つは複数の分類器を比較する ScikitLearn.jl のこのサンプル

1. ExtraTreesClassifier で特徴量の重要度を求めるサンプル

Ruby 版のコードは examples/plot_forest_importances_faces.rb

実行すると以下のような図が表示される。

f:id:mrkn:20170220183137p:plain

2. 複数の分類器を比較するサンプル

Ruby 版のコードは examples/classifier_comparison.rb

実行すると以下のような図が表示される。

f:id:mrkn:20170220183148p:plain

2017/02/19

numpy も一部だけ使えるようになった

matplotlib のヒストグラムのサンプルを実行できるようにするため、とりあえず加算と乗算だけ対応した。

f:id:mrkn:20170219223312p:plain

以下のようなスクリプトが普通に動いている。なかなか良い進捗だと思う。

require 'pycall/import'
include PyCall::Import

pyimport 'numpy', as: 'np'
pyimport 'matplotlib.mlab', as: 'mlab'
pyimport 'matplotlib.pyplot', as: 'plt'

np.random.seed.(0)

mu = 100
sigma = 15
x = mu + sigma * np.random.randn.(437)

num_bins = 50

fig, ax = plt.subplots.()

n, bins, patches = ax.hist.(x, num_bins, normed: 1)

y = mlab.normpdf.(bins, mu, sigma)
ax.plot.(bins, y, '--')
ax.set_xlabel.('Smarts')
ax.set_ylabel.('Probability density')
ax.set_title.('Histogram of IQ: $\mu=100$, $\sigma=15$')

fig.tight_layout.()
plt.show.()

2017/02/18

Ruby から matplotlib を使えるようになった

Ruby から Python のライブラリ群を利用するための橋渡しになる pycall というライブラリを作っている。 今日、このライブラリを使って matplotlib を使えるようになった。

Python の C-API のエラー処理などをサボっていたりするので全然実用的な状態ではないのだが、とにかく目出度い。

f:id:mrkn:20170218230314p:plain

2017/01/26

六本木から銀座まで歩いてみた

35分くらいでたどり着けて思ったより近いんだなと感じた。

銀座で高専時代の同級生と花まるしました。

確定申告の書類作り

ほとんど完成した。あとは家族のマイナンバーだけ。

2017/01/25

tmux のステータスバーに電源の状態を置いたら便利だった

こんな感じ。pmset -g batt で状態をとってきて加工している

f:id:mrkn:20170125114428p:plain

ROLLCAKE 社訪問

いままで何度か行こうと思いつつも行けてなかった ROLLCAKE 社を訪問して、皆さんとお話ししてきた。

また機会を作って遊びに行きますね。今度は私がお土産を持って行きます。

欠測値処理について学んでいる

何も考えず dropna したり代表値で補間したりして良いわけない。じゃあどうしたら良いのか?っていうのを学んでいる。

娘のお迎え

娘のお迎えに行ったのだけど、妻の退社のタイミングとピッタリだったので一緒にお迎えしに行った。

久々に家族3人で保育園から帰宅できて良かった。