
我們已將重命名為從Xlearning到Hbox的存儲庫。
如果您有存儲庫的本地克隆,請更新您的遠程URL:
git remote set-url origin https://github.com/Qihoo360/hbox.gitHbox是一個方便,有效的調度平台,結合了大數據和人工智能,對各種機器學習,深度學習框架的支持。 Hbox正在Hadoop紗線上運行,並集成了深度學習框架,例如Tensornet,Tensorflow,Mxnet,Caffe,Theano,Pytorch,Keras,Xgboost,Xgboost,Horovod,OpenMPI,Tensor2tensor。支持GPU資源計劃,在Docker和Restful API管理接口中運行。 Hbox具有令人滿意的可伸縮性和兼容性。
中文文檔

Hbox中有三個基本組件:
除了Tensorflow和MXNET框架的分佈式模式外,HBOX還支持所有深度學習框架的獨立模式,例如Caffe,Theano,Pytorch。此外,HBOX允許靈活地自定義版本和多次框架。
培訓數據和模型結果保存到HDF(支持S3)。 Hbox可以通過設置--input-strategy參數或hbox.input.strategy配置來指定輸入數據的輸入策略--input 。 Hbox支持讀取HDFS輸入數據的三種方法:
與讀取策略相似,Hbox允許通過設置--output-strategy參數或hbox.output.strategy配置來指定輸出數據的--output策略。結果輸出模式有兩種:
更多詳細信息請參閱數據管理
應用程序接口可以分為四個部分:

除了在分佈式模式TensorFlow框架上自動構造ClustersPec之外,可以直接在Hbox上執行獨立模式Tensorflow和其他深度學習框架的程序。
在源代碼的根目錄中運行以下命令:
./mvnw package
編譯後,將在根目錄中的core/target下生成一個名為hbox-1.1-dist.tar.gz的分發軟件包。解開分發包的包裝,將在根目錄下生成以下子目錄:
要設置配置,用戶需要將HBOX_CONF_DIR設置為包含有效hbox-site.xml的文件夾,或將此文件夾鏈接到$HBOX_HOME/conf 。
在拆卸分佈軟件包“ $ hbox_home”的“ conf”目錄下,配置相關文件:
hbox-env.sh:設置環境變量,例如:
hbox-site.xml:配置相關屬性。請注意,與歷史記錄服務相關的屬性必須與歷史記錄服務啟動時配置的內容保持一致。有關更多詳細信息,請參閱配置部分。
log4j.properties:配置日誌級別
$HBOX_HOME/sbin/start-history-server.sh 。 使用$HBOX_HOME/bin/hbox-submit將應用程序提交給Hbox客戶端中的群集。這是TensorFlow應用程序的提交示例。
將“數據”目錄上傳到將分佈軟件包的根源下載到HDFS
cd $HBOX_HOME
hadoop fs -put data /tmp/
cd $HBOX_HOME/examples/tensorflow
$HBOX_HOME/bin/hbox-submit
--app-type "tensorflow"
--app-name "tf-demo"
--input /tmp/data/tensorflow#data
--output /tmp/tensorflow_model#model
--files demo.py,dataDeal.py
--worker-memory 10G
--worker-num 2
--worker-cores 3
--ps-memory 1G
--ps-num 1
--ps-cores 2
--queue default
python demo.py --data_path=./data --save_path=./model --log_dir=./eventLog --training_epochs=10
參數的含義如下:
| 屬性名稱 | 意義 |
|---|---|
| 應用名稱 | 應用名稱為“ TF-DEMO” |
| 應用類型 | 應用類型為“ TensorFlow” |
| 輸入 | 輸入文件,HDFS路徑為“/tmp/data/tensorflow” |
| 輸出 | 輸出文件,HDFS路徑為“/tmp/tensorflow_model” |
| 文件 | 應用程序和所需的本地文件,包括demo.py,datadeal.py |
| 工人記憶 | 用於工作過程的內存數量為10GB |
| 工人名 | 用於應用程序的工人容器的數量為2 |
| 工人核 | 用於工作過程的核心數為3 |
| PS-MEMORY | 用於PS過程的內存數量為1GB |
| PS-num | 用於應用程序的PS容器的數量為1 |
| PS核 | 用於PS過程的核心數為2 |
| 隊列 | 該申請提交給的隊列 |
有關更多詳細信息,請設置提交參數部分。
Hbox常見問題解答
Hbox是由Github的團隊設計,撰寫,審查和測試的:
@yuance li,@wen ouyang, @runying jia, @yuhan jia,@lei wang
