开源大数据EMR
2019-02-20
6314浏览量
Analytics Zoo 是由 Intel 开源,基于 Apache Spark 和 Inte BigDL 的大数据分析和 AI 平台,方便用户开发基于大数据、端到端的深度学习应用。本文简单介绍了如何在阿里云 E-MapReduce 使用 Analytics Zoo 来进行深度学习。
Analytics Zoo是由 Intel 开源,基于Apache Spark 和 Inte BigDL 的大数据分析和AI平台,方便用户开发基于大数据、端到端的深度学习应用。
安装Scala
下载 pre-build 版本,可以从 github,analytics 主页下载到pre-build版本
export MAVEN_OPTS="-Xmx2g -XX:ReservedCodeCacheSize=512m"
如果使用 ECS 机器进行编译,推荐修改 Maven 仓库 mirror:
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
下载 Analytics Zoo release版本,解压后在目录下运行:
bash make-dist.sh
build 结束后,在 dist 目录中包含了所有的运行环境。将 dist 目录放到 EMR 软件栈运行时统一目录:
cp -r dist/ /usr/lib/analytics_zoo
安装python
Analytics Zoo 支持 pip 安装和非 pip 安装,pip 安装会安装 pyspark,bigdl等,由于EMR 集群已经安装了 pyspark,通过 pip 安装有可能引起冲突,所以采用非 pip 安装。
bash make-dist.sh
进入 pyzoo 目录,安装 analytcis zoo:
python setup.py install
试用
export ANALYTICS_ZOO_HOME=/usr/lib/analytics_zoo
export PATH=$ANALYTICS_ZOO_HOME/bin:$PATH
EMR 已经设置了 SPARK_HOME,所以无需再次设置。
使用 Spark 来训练和测试深度学习模型
spark-submit --master yarn \
--deploy-mode cluster --driver-memory 8g \
--executor-memory 20g --class com.intel.analytics.zoo.examples.textclassification.TextClassification \
/usr/lib/analytics_zoo/lib/analytics-zoo-bigdl_0.6.0-spark_2.1.0-0.2.0-jar-with-dependencies.jar --baseDir /news
同时查看日志,能够看到每个epoch的accuracy信息等。
INFO optim.DistriOptimizer$: [Epoch 2 9600/15107][Iteration 194][Wall Clock 193.266637037s] Trained 128 records in 0.958591653 seconds. Throughput is 133.52922 records/second. Loss is 0.74216986.
INFO optim.DistriOptimizer$: [Epoch 2 9728/15107][Iteration 195][Wall Clock 194.224064816s] Trained 128 records in 0.957427779 seconds. Throughput is 133.69154 records/second. Loss is 0.51025534.
INFO optim.DistriOptimizer$: [Epoch 2 9856/15107][Iteration 196][Wall Clock 195.189488678s] Trained 128 records in 0.965423862 seconds. Throughput is 132.58424 records/second. Loss is 0.553785.
INFO optim.DistriOptimizer$: [Epoch 2 9984/15107][Iteration 197][Wall Clock 196.164318688s] Trained 128 records in 0.97483001 seconds. Throughput is 131.30495 records/second. Loss is 0.5517549.
在 Analytics Zoo 中使用pyspark 和 Jupyter 来进行深度学习训练
pip install jupyter
-使用以下命令启动:
jupyter-with-zoo.sh
-使用 Analytics Zoo,推荐采用内置的 Wide And Deep 模型来进行。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里巴巴开源大数据技术团队成立Apache Spark中国技术社区,定期推送精彩案例,问答区数个Spark技术同学每日在线答疑,只为营造纯粹的Spark氛围,欢迎加入!邀请你加入钉钉群聊Apache Spark中国技术交流社区,点击进入查看详情 https://qr.dingtalk.com/action/joingroup?code=v1,k1,X7S/0/QcrLMkK7QZ5sw2oTvoYW49u0g5dvGu7PW+sm4=&_dt_no_comment=1&origin=11