LoginSignup
4
3

More than 5 years have passed since last update.

Docker上にApache Zeppelin + Apache Spark + Python(Keras, TensorFlow)の環境を作ってみた

Last updated at Posted at 2017-12-28

目的

前の投稿QRNNでカオス時系列データ予測を使って為替予測にチャレンジしてみたかったが、環境がないと始まらないということでdockerを使ってApache Zeppelin + Apache Spark + Python(Keras, TensorFlow)の環境を作ってみた。

Apache Zeppelin with Apache Spark + Python(Keras, TensorFlow) over Docker

現在業務でApache Sparkを使ってデータのクレンジング・集計・統計を行なっているが、いちいちシェルやプロジェクトでデータ整形・統計を行なってると何が何だかわからなくなるので、GUIでインタラクティブなツールとしてApache Zeppelinを利用している。

notebook.png

notebookとして処理をまとめられるのでなかなか便利だ。
(ipythonのSpark特化版みたいなもの)

また、Apache Zeppelinはdocker上で動作させている。
(処理は完全分散モードで動作しているsparkに投げているので、zeppelin自体のリソースはさほど必要ないため)

この環境ではデータのクレンジング・集計・統計作業を楽々行えるが機械学習の環境整備はまだできていない。
特にDNNを使用したい場合、Spark MLlibでは対応していないので他のライブラリが必要となる。

そこで、上記環境にPython(Keras, TensorFlow)を追加しクレンジング・集計・統計・機械学習まで一気に行える環境にする。

想定している処理分担は以下の通り。
- クレンジング : Spark(Scala)
- 集計 : Spark SQL
- 統計 : Spark SQL
- 機械学習 : Spark MLlib, Python(Keras, TensorFlow)

D-Zeppelin

Apache Zeppelin with Apache Spark + Python(Keras, TensorFlow) over DockerをD-Zeppelinとしてgithubに公開しました。

使い方はReadmeを読んでください。
(hiveのmetasotreの扱いに苦労しました...)

今後

D-ZeppelinのGPU対応と環境ができたので実際に為替予測を始めたいな.

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3