KZKY memo

自分用メモ.

Tensor Flow: Whitepaper

TensorFlow Whitepaperを2015/11/17に読んだ時のまとめ Abstract いろんなデバイスで動く モバイイルから 大規模GPU Clusterまで Apache2.0 Licence 1 Introduction DistBeliefは第1世代 TensorFlowは第2世代 TensorFlowのアブストラクションはdeep learning…

TensorFlow: Getting Started

Basic Usage Install cuda 7.0 (gpu使いたい場合) $ wget "http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_7.0-28_amd64.deb" $ sudo dpkg -i cuda-repo-ubuntu1404_7.0-28_amd64.deb $ sudo apt-get upd…

Hello TensorFlow

TensorFlow Googleが出したFlow Graph or Computational Graph 上で数値計算を行えるOSS. 本命どこがOSSでだしてきた.界隈ではゲームのルールが変わるかも. 何ができるか 一般的なDeep Learning Multi Layer Perceptron Convolutional Neural Networks Vec…

PythonにおけるShared Memory

前提 pythonはGILの影響でmulti thread programmingでcpu-bound jobが早くならない. なので,multiprocessingを使うしかない.CPythonのmultiprocessingはforkなので,unixならcopy-on-write.なので,globで定義したデータなら,Read-onlyに限り,特段気に…

Chainerをさわってみた

自分用のまとめなのでDNN知っていたり,Keras, Caffe, Torchとか他のDNN Libraryを知っている人は,公式Docmentを読んだほうがいい.Github Star数的にはCaffe > Keras >= Torch > Chainer (ただし,chainerを見ているのは日本人くらいだろうから,結構多い…

Nginx + uWSGI

これを参考にすると大体分かる.Nginxをreverse proxyとして使う場合は, uwsgi --http-socket ...でなく uwsgi --socket をつかうこと.そうしないと, <html> <head><title>502 Bad Gateway</title></head> <body bgcolor="white"> <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx/1.4.6 (Ubuntu)</center> </body> </html> が返ってきた.documentでは,--http-…

Flask-Restful

基本 flaskのみだと if request.method == "GET": ... な感じで,HTTP Methodと振る舞いを対応付けるが,これをやってくれるのが,Flask-RESTful. Resourceクラスを拡張したクラスとURL Routingを書いてそれらを紐付ける. Basic Sample Code from flask imp…

怒涛のAkka: Cluster Usage

この記事はAkka2.3.9なので注意. Documentの通りにやる. A Simple Cluster Example Cluster extension を有効にするには次のapplication.confをclass path rootにおく. src/main/resources/においておけばいい applicatoin.conf akka { actor { provider …

怒涛のAkka: Cluster Specification

初めに,これは忘れてはいけない Akka Cluster provides a fault-tolerant decentralized peer-to-peer based cluster membership service with no single point of failure or single point of bottleneck. It does this using gossip protocols and an aut…

怒涛のAkka: General

akka generalのまとめ,重要だと思った箇所のみ抜粋している. Actor Sytem ActorSystem(Actorを作るobject)は,threadをたくさん使い,heavyweight stuructureなので,1つのロジカルアプリケーションに1つつくること. Hierachical Structure 親acotrが子ac…

Latex Beamer

すっごい久ぶりにBeamerで書いた昔の資料を引っ張り出してきたら動かなかったので,Beamerを使えるようになるまでの(復旧)メモ 環境 OS: Ubuntu14.04 Installation sudo apt-get install latex-beamer sudo apt-get install texlive-lang-cjk たぶん,これで…

Nettyを調べた

基本 何をやるものか High Performance Non-Blocking Socket Server を作れる別の言葉で言うと NIO client server framework Performance ここによると javaだと一番早い. それより上位はC/C++のみ この条件 Dell R720xd dual-Xeon E5 v2 10 GbE 157 tests …

KnockoutJSの基本とアプリケーションサンプル

基本 ざっくりサーベイをした結果. デモ以上,社内利用以下,プロダクション未満なら knockoutjsで確実に十分だということがわかった. ただ,MSはプロダクションにも使用していると思うのでプロダクションでもいいかも多分tutorialを順にやっていくのが一番…

Flask: Bluprint Static Page

Flaskで少し大きめのWebアプリケーションを作るときは,Blueprintを使うのが普通.でも webpage = Blueprint('webpage', __name__, url_prefix='/web') ... @webpage.route("/<path:filename>") def top(filename): return app.send_static_file(filename) な感じ書くと500</path:filename>…

Read Comparison with pickle vs npy vs mat vs hdf5 format

各種フォーマット pickle npy mat hdf5 におけるReadの比較を行ったのでそれをレポート 環境 OS Ubuntu14.04 CPU Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz Disk Hitachi HTS54756 FS ext4 データ 元Data cifer10 (obtained from Kaggle so that it is jpeg…

python: multiprocessing 2

前回zipfileのunzipをpythonのmultithreadingで行って全然早くなっていないことを確認したが, image 2 ndarray pickle 2 ndarray だとどうなるのが調べてみた. pickleはndarray.dumpしたもの. 実験設定と環境 OS Ubuntu14.04 CPU Intel(R) Core(TM) i5-25…

Flask x Celery

次の2つを含んだサンプル Flaskの中からCelery Taskを実行する Celery Taskの中からdbにアクセスする flask_celery.py from celery import Celery from flask import Flask, request, jsonify from flask.ext.login import LoginManager, UserMixin, login_…

Flask-Login x Flask-Mongoengine

Flask-Loginを使って Flask-MongoEngineで作成したUser Documentをuser classとして使用する Testや単なるAPIとして,APIを使用したいときに認証回避を可能にする これらをやってみる Sample Code #!/usr/bin/env python from flask import Flask, request, …

Swagger 超基本

環境 Ubuntu 14.04 Installation nodejsが必要 buildする場合 git clone https://github.com/joyent/node.git install node cd ${pathto_node} ./configure make sudo make install pre-buildの場合 ここから持ってくる system wide cd /usr/local && tar --…

Celery: Task Revoke

taskの中断 revokeを使う async_resultにアクセス可能なら,async_result.revoke() idのみわかっているなら,celery.task.control.revoke() worker.py from celery import Celery import time import celeryconfig #app = Celery("tasks", backend="rpc", br…

python: socketio-client

jsからだけではなく,pythonからsocketio serverにリクエストしたい.1. python-socketio-client 2. python-socketio-sever 3. jsという順にメッセージを送りたい 環境 ubuntu 14.04 python 2.7 server: flask-socketio client: python socketio-client Inst…

KVM How-To

kvm

How-To Disk Formatの確認 qemu-img info disk.img Disk作成 qemu-img create -f qcow2 ${disk-name}.${qcow2} ${n}G Disk Copy cp –sparse=never olddisk.img newdisk.img Disk Convert qemu-img convert -O raw file.qcow2 file.img qemu-img convert -O q…

python: pandas 基本

基本 Rからnumpyに入った人にとってDataFrameがないのは痛い. pythonのlibraryにpandasというのがあって,それでDataFrame-likeなオブジェクトを扱える. データ構造 -------------------------------------------------- Dimensions Name Description ----…

python: Supervisord 基本

Supervisord ClouderaManagerのこれを使用してHadoop Serviceを起動している. subprocessesの管理もできるので分散システムに関しては向いている. 日本語の記事がかなりまとまっているので基本はそれを参考 調べるときは本家を見る Configはini形式 環境 U…

Celery 基本

前提 OS: ubuntu14.04 インストール sudo apt-get install rabbitmq-server python-celery python-celery-doc 基本 celeryはmessage passing framework message brokerを必要とする Broker 選べる RabbitMQ Redis SQLAlchemy, Django Database (not recommen…

Flask-Auth 基本

Pluginの列挙 DIY Flask-Login Flask-Auth FlaskSecurity DIY http://blog.miguelgrinberg.com/post/restful-authentication-with-flask Flask-Login https://blog.openshift.com/use-flask-login-to-add-user-authentication-to-your-python-application/ …

Flask-SocketIO 基本

Installation pip install flask-socketio まずはこちらをやる 短いから WebSocket 基本 Communication protocol in HTML5 Permanent connection Bi-directional communication Either client or server can initiate communication Flask-Socketsとの違い F…

Flask-SQLAlchemy 基本

SQLAlchemyの基本 ORM: Object Relational Mapper DMP: Data Mapper Pattern; classes mapped to a database Quick Start https://pythonhosted.org/Flask-SQLAlchemy/quickstart.html で事たりる hello_sqlalchemy_mysql.py from flask import Flask from f…

Flask基本

Installation 環境 Ubuntu14.04 pip install $ pip install Flask $ python hello.py * Running on http://localhost:5000/ Getting Started Super Basics from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World…

python: pairwise-distance

numpyでfor-loopしながらpairwise distanceを計算すると非常に遅い. pairwise distanceはgram行列のカーネルにrbfを使った時に絶対に出てくるので,高速計算は必須要件. 比較 普通のfor-loop 行列計算ベースで一気に行う方法 numbaで比較する 環境 Ubuntu1…