You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
本日は my Bokeh シリーズが充実してきました. Bokeh をつかって行列演算を可視化する. (続き)Bokeh をつかって行列演算を可視化する(with animation) Bokeh対話機能を用いた画像処理結果の可視化 Bokehを用いた2x2の行列演算の可視化 Bokehを用いた回転行列演算可視化(手動でスライダー) これらの続きとして グラフ描画ツールBokehを用いて2x2行列 import numpy as np from bokeh.plotting import figure from bokeh.models import ColumnDataSource from bokeh.models.widgets import Slider, Div from bokeh.layouts import column, widgetbox, gridplot from
👋 The Python Graph Gallery is a collection of hundreds of charts made with Python. Graphs are dispatched in about 40 sections following the data-to-viz classification. There are also sections dedicated to more general topics like matplotlib or seaborn. Each example is accompanied by its corresponding reproducible code along with comprehensive explanations. The gallery offers tutorials that cater
Webからデータを取得して、効率よく整理、分析を行い効果的な可視化を実現するには、さまざまなツールとテクニックが必要です。 本書ではPythonとJavaScriptを使い分け、それぞれの言語の強みを最大限利用します。 PythonのBeautifulSoupとScrapyでデータを取得、pandas、Matplotlib、Numpyでデータ処理を行い、Flaskフレームワークを使ってデータを配信、JavaScriptのD3.jsを使ってインタラクティブなWeb可視化を実現します。データの収集からアウトプットまでの全体を視野に入れて解説しているので、実際にコードを追いながら、この一冊でデータ分析プロセスの全体像を理解できます。 まえがき はじめに 1章 開発環境の準備 1.1 本書で扱うコード 1.2 Python 1.2.1 Anaconda 1.2.2 Anacondaインストールの確
はじめに データ可視化では、データの性質によって概ねどのような可視化ができるのか決まる場合があります。データ可視化は探索的なデータ分析をする場合や、データ分析した結果を誰かに伝えるために重要であり、その時々の目的に合わせた可視化を選択するべきですが、そもそも可視化手法の特性とデータの性質があっていないとあまり効果がない場合があります。筆者が業務においてデータ可視化する際にデータの性質から可視化手法を導く場合の道のりを整理し、チートシートとしてまとめてみました。 もちろん、調べたい・表現したい内容によって自分で自由に選んでもまったく問題無いですが、データを前にして「どうやって可視化しよう?」と悩んでいる方の一助になれば幸いです。 また、この記事では主に一般的な可視化(グラフ)手法にフォーカスしており、イラスト的な要素を含むインフォグラフィックなどについては触れていません。(が、だいたいのデー
chainerで、ネットワークの構造を可視化するcomputational_graphが実装されたようです。 Visualization of Computational Graph — Chainer 1.6.0 documentation これはDOT言語とういグラフ記述の形式で保存されるのですが、DOT言語を知らなくて描画方法がよくわからなかったので調べてメモしておきます。 Graphviz Graphvizは、DOT言語などのスクリプトで表されたグラフを表示するパッケージです。これを入れれば描画できそう。ということでインストール(mac) brew install graphviz 描画 chainerのexampleのmnistのやつを実行したときに生成されるdotファイルをpngファイルとして描画してみます。これでできるみたい。 dot -Tpng chainer/exampl
ネットワークの重みや各ニューロンがどういう入力の時に発火するのかが、学習していく過程で各時刻可視化されてとても良い教材です。 http://playground.tensorflow.org/ うずまきのデータセットに関して「中間層が1層しかないとうずまき(線形非分離な問題)は解けない」という誤解があるようなので、まずは1層でできるという絵を紹介。なお僕のタイムライン上では id:a2c が僕より先に気付いていたことを名誉のために言及しておきます。 で、じゃあよく言われる「線形非分離な問題が解けない」ってのはどういうことか。それはこんな問題設定。入力に適当な係数を掛けて足し合わせただけでは適切な境界を作ることができません。 こういうケースでは中間層を追加すると、中間層が入力の非線形な組み合わせを担当してくれるおかげで解けなかった問題が解けるようになります。 1つ目のデータセットでは特徴量の
Jupyter NotebookからKerasを使用すると、Trainingの進行状況がよくわからなくて不便ですよね。 keras-tqdmというライブラリを使うと、Jupyter NotebookでKerasのfitメソッドの進行状態をprogress barで表示してくれます。 GitHub - bstriner/keras-tqdm: Keras integration with TQDM progress bars インストール方法 pipでインストールできます。 pip install keras-tqdm 使い方 modelのfitメソッドを呼び出す際に、callbackとして渡すだけです。 from keras_tqdm import TQDMNotebookCallback model.fit(X_train, Y_train, verbose=0, callbacks=[
皆さんこんにちは お元気ですか。私はGWでリフレッシュして、生き返りました。 Kaggleをやっているとき(特に画像などの長い場合)にリモートで 今学習されているかどうか、誤差はどうかなどのモデルの 様子が気になることはありませんか? 私は画像認識系のコンペを実際に行っている時に、気になることがあります。 これどうしようかと考えていたのですが、歩いている時にふと思いついたので実装しました。 このアイデアの実装のために、新しいChainerのExtensionを開発しました。(Trainerを使う想定です) アイデア Slackであれば外出中も見れると考えました。 そのため、学習の途中経過(lossなど)を投稿すれば見れる! 実装イメージは次の図に掲載しました。 コードを見た限りだと、Extensionで実装できそうだったので、トライしました。 Extensionの実装方法 Extensio
追記 2012/06/22 公式ページを作りました。そちらも参考にしてくださいませ GrowthForecast - Lightning fast Graphing / Visualization http://kazeburo.github.com/GrowthForecast/ Kansai.pmのLTでも紹介したんだけど、APIを叩く事でグラフを更新するツールを書きました。話の発端としては「cloudforecastのグラフを外からAPIで更新したい」ということでしたが、cloudforecastではグラフの追加が重い処理になってしまうので、別のプロダクトとしています。 サーバの負荷などのメトリクスを収集し、グラフ化することで、システムに掛かっている負荷を把握し、パフォーマンスに影響がでるまえに対策をうったり、改善の結果を知る事ができますが、同じ事はシステムだけではなく提供しているサ
# ----------General Module---------- import numpy as np import pandas as pd # ----------User Module---------- from randomwalk import randomwalk import stockplot as sp General Module, Hide General Moduleは一般に配布されているパッケージなので、condaやpipといったパッケージ管理ソフトなどで追加してください。 General ModuleはこのJupyter Notebook内で使います。 Hide General Moduleはstockplot内で使用します。
以前書いた Pythonでカオス・フラクタルを見よう! と似たような数理モデル一発ネタであります. Optimal Velocity Model 坂東昌子さんという素粒子畑の物理屋さんがつくった渋滞モデルです. これは自然渋滞を表現するモデルとして有名です. 「事故なんかなくても車の数がある程度ありゃあ渋滞は起きるよ!」ということです. このモデルの骨子は, 前の車との車間距離に応じて目標速度が変化することにあります. 車間距離が大きければ法定速度で走ろうとするし, 小さければ速度を下げようとします. これを微分方程式で表現すると以下のようなものになります: \frac{d}{dt}x_n = v_n, \hspace{1cm}\frac{d}{dt}v_n = a\left[V(x_{n+1} - x_n) - v_n\right] $c$ は適当な定数. $V(h)$ はこんな概形です
Chainerによる多層パーセプトロンの実装(2015/10/5)のつづき。今回はChainerで畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)を実装した。Theanoによる畳み込みニューラルネットワークの実装 (1)(2015/6/26)で書いたのと同じ構造をChainerで試しただけ。タスクは前回と同じくMNIST。 今回は、MNISTデータの取得や訓練/テストの分割にscikit-learnの関数を使ってみた。 Chainerで畳み込みをするためには、訓練データの画像セットを(ミニバッチサイズ、チャンネル数、高さ、幅)の4次元テンソルに変換する必要がある(ここに書いてある)。今回はチャンネル数が1なので単純にreshapeで変形できる。 3チャンネルのカラー画像だとnumpyのtranspose()で4次元テンソルに変換できるみたい
Deep Learningの学習結果(重み)はブラックボックスで、隠れ層のユニット(特に深い層の!)が一体何を学習したのかがよくわからないと長年言われてきた。しかし、今回紹介する方法を使うとニューラルネットが何を学習したのか目で見える形で表現できる。 畳み込みニューラルネットで学習したフィルタの可視化というと以前やったように学習した第1層のフィルタの重みを直接画像として可視化する方法がある。 しかし、畳み込みフィルタのサイズは基本的に数ピクセル(MNISTの例では5x5ピクセル程度)のとても小さな画像なのでこれを直接可視化しても何が学習されたか把握するのはとても難しい。たとえば、MNISTを学習した畳み込みニューラルネット(2016/11/20)のフィルタを可視化しても各フィルタがどの方向に反応しやすいかがわかる程度だ。 各フィルタが何を学習したかを可視化する別のアプローチとして各フィルタ
はじめに TensorFlowにはTensorBoardという視覚化ツールが用意されています。TensorBoardを使うとニューラルネットのグラフや学習状況をインタラクティブに確認することができるので大変便利です。 しかし、TensorBoardの利用には「ログの書き出し→サーバ起動→ブラウザ起動」の手間があったり、GRAPHで表示されるグラフはノード名が途中で「...」で丸められてしまって他人に説明するには使いづらかったり、データサイエンス系で人気のJupyter notebookと連携できないといった面倒な点があります。 そこで、TensorFlowで構築したグラフをDOT言語+graphvizによって可視化するモジュールtfgraphvizを作りました。tfgraphvizを使うことで、グラフを簡単に画像化したり、TensorBoardのGRAPH機能と同等の機能をJupyter
Pythonで可視化といえばMatplotlibだけど、APIがごちゃちゃしていて覚えにくいのが難点かな。BokehがAPIもうまく整理されていて一番使い勝手がいい気がするけど、まだまだ日本語の情報が少ないのが惜しいところ。 これからはWebにも対応できるBokehが伸びてくるんじゃないかと勝手に期待している。 おすすめの使い分け方 簡単なデータを手早くプロットするなら Matplotlib MATLABからPythonに乗り換えたなら Matplotlib かっこよく人に見せたいなら Bokeh 対話操作を入れたいなら Bokeh グラフ上のデータ点の数値を確認したいなら Bokeh Plotly 3D形状をプロットするなら Plotly Mayavi 統計分析するなら seaborn Matplotlib 良い点 簡単なデータをプロットするのは楽。 プロットの機能が充実している(気がす
画像認識に使われる畳み込みニューラルネットワーク(以下CNNと呼ぶ)というものがあります。Tensorflow のチュートリアル(Deep MNIST for Experts)にも出てきますが、ネットワークが複雑で理解するのに苦労します。そこで、畳み込み層とプーリング層の中身を画像化して、何が行われているのかなんとなく体感したいと思います。 ベースとなる Deep MNIST for Experts のコード 今回使用するコードは github(tf-cnn-image) に上げてあります。 まずはCNNのコードを用意します。Deep MNIST for Expertsのコードから不要な箇所を削除したものを用意しました。コメントは最小限にしてあるので、詳しい動作を知りたい場合はこちらなどを参考にしてください。 # -*- coding: utf-8 -*- import sys sys.p
単語と遊ぶ① 分布図を書いてみる 分布図を書くメソッドを以下のように定義しました。 通常、単語のベクトル表現は100次元とか300次元とかでモデルに学習させます。 それを次元圧縮して2次元に落とし込んだ後に可視化を行っています。 from sklearn.decomposition import PCA import matplotlib.pyplot as plt def draw_word_scatter(word, topn=30): """ 入力されたwordに似ている単語の分布図を描くためのメソッド """ # 似ている単語を求めるためにはGensim word2vecの以下の機能を利用 # model.most_similar(word, topn=topn) words = [x[0] for x in sorted(model.most_similar(word, topn
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く