为什么80%的码农都做不了架构师?>>>   

安装篇

intel BIGDL的安装似乎很简单,从官网下载一个包,解压就可以了。使用似乎更简单,把包放入spark-submit的路径中,运行就可以了。但是真的是这么简单吗?未必。

  1. 确定spark版本 。在BigDL官网,可以看到多个 版本。从0.1 到 0.2 ,从spark 1.5 到 spark 2.1.1

  2. Cloudera默认装spark 1.6,此外还可以另外安装spark 2。从Cloudear官网,下载SPARK2_ON_YARN-2.1.0.cloudera1.jar,就是2.1.1;如果是SPARK2_ON_YARN-2.1.0.cloudera2.jar,就是2.1.2

  3. 安装结束之后,要运行spark2-submit, pyspark2等命令,验证spark2有效

  4. bigdl下载回来之后,假设/data/app/bigdl2为应用目录,将zip文件移到这个目录下,然后解压缩,会看到3个文件夹,分别为bin , conf 和lib。

  5. 到此,安装结束。

验证篇

bigDL提供了一些例子,例如lenet数字识别。如果要运行run.example.sh,则需要准备很多环境变量,非常麻烦,所以我建立了一个简化的版本。

以下部分是训练模型,最后训练好的模型会保存到/data/sample/lenet_model/yyyymmdd_hhmmss 下,预测的时候,会用到:

        BIGDL_VERSION=0.2.0BIGDL_JAR=/data/app/bigdl2/lib/bigdl-SPARK_2.1-${BIGDL_VERSION}-jar-with-dependencies.jarMAX_EPOCH=10MODEL_DIR=/data/sample/lenet_modelDATA_DIR=/data/sample/mnistCORES=4NODES=4MEMORY=2GBATCH_SIZE=1024MODEL=lenetspark2-submit --master $SPARK_URL \--conf  spark.dynamicAllocation.minExecutors=20   \    --conf  spark.dynamicAllocation.maxExecutors=20  \--total-executor-cores $(($CORES * $NODES)) \--executor-cores $CORES \--driver-cores $CORES \--driver-memory $MEMORY \--executor-memory $MEMORY \--num-executors $NODES \--class com.intel.analytics.bigdl.models.$MODEL.Train $BIGDL_JAR \-f $DATA_DIR/ -b $BATCH_SIZE \--maxEpoch $MAX_EPOCH --overWrite --checkpoint $MODEL_DIR

预测部分,请看--model参数,这里需要指定一个具体的模型文件名称:

spark2-submit \--master yarn \--conf  spark.dynamicAllocation.maxExecutors=16 \--conf  spark.dynamicAllocation.minExecutors=16 \--total-executor-cores $(($CORES * $NODES)) \--executor-cores $CORES \--driver-cores   $CORES \--driver-memory  $MEMORY \--executor-memory $MEMORY \--num-executors $NODES \--class com.intel.analytics.bigdl.models.$MODEL.Test $BIGDL_JAR \-f $DATA_DIR/ \--model $MODEL_DIR/20171023_124010/model.119  \-b $BATCH_SIZE

此外,本次验证了在spark2.2上跑bigdl for 2.1.1,结果失败了,提示数据类型转换异常。在spark1.6上跑是可以的。

#!/usr/bin/bash
BigDL_HOME=/data/app/bigdl2
BIGDL_VERSION=0.2.0
MASTER=yarn
SPARK_VERSION=SPARK_2.1
PYTHON_API_ZIP_PATH=${BigDL_HOME}/lib/bigdl-${BIGDL_VERSION}-python-api.zip
BigDL_JAR_PATH=${BigDL_HOME}/lib/bigdl-${SPARK_VERSION}-${BIGDL_VERSION}-jar-with-dependencies.jarexport PYTHONPATH=${PYTHON_API_ZIP_PATH}:$PYTHONPATH
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS="notebook --notebook-dir=./  --ip=* --no-browser"pyspark2 \--master ${MASTER} \--properties-file ${BigDL_HOME}/conf/spark-bigdl.conf \--driver-cores 5  \--driver-memory 2g  \--total-executor-cores 8  \--executor-cores 1  \--num-executors 4  \--executor-memory 2g \--py-files ${PYTHON_API_ZIP_PATH} \--jars ${BigDL_JAR_PATH} \--conf spark.driver.extraClassPath=${BigDL_JAR_PATH} \--conf spark.executor.extraClassPath=bigdl-${SPARK_VERSION}-${BIGDL_VERSION}-jar-with-dependencies.jar

转载于:https://my.oschina.net/pearma/blog/1542664

Intel BIGDL 探索相关推荐

  1. 探索 TVM 进行量化方法

    探索 TVM 进行量化方法 Relay框架 如上图所示,有两种不同的并行工作正在进行中 • 自动整数量化 - 采用 FP32 框架图,在 Relay 中自动转换为 Int8. • 接受预量化整数模型 ...

  2. 自主数据类型:在TVM中启用自定义数据类型探索

    自主数据类型:在TVM中启用自定义数据类型探索 介绍 在设计加速器时,一个重要的决定是如何在硬件中近似地表示实数.这个问题有一个长期的行业标准解决方案:IEEE 754浮点标准.1.然而,当试图通过构 ...

  3. Google、Intel、Uber等巨头如何布局AI?听听他们自己人怎么说

    2018年4月10日至4月13日,由O'Reilly和Intel共同举办的AI Conference 2018北京站大会在北京国际饭店会议中心隆重举行. 大会的主题是"探索在业务中应用人工智 ...

  4. 资源 | Intel发布AI免费系列课程3部曲:机器学习基础、深度学习基础以及TensorFlow基础

    翻译 | AI科技大本营(公众号ID:rgznai100) 校对 | 成龙 编辑 | 明明 Intel于近期发布了三门AI系列的免费课程,分别是关于机器学习基础.深度学习基础.TensorFlow基础 ...

  5. Intel和IBM押重注的神经模态计算,会给行业带来什么样的变化

    Intel发布的Pohoiki Beach加速卡,含有64块Loihi芯片 来源: 半导体行业观察 上周,Intel发布了基于其神经模态(neuromorphic)计算芯片Loihi的加速卡Pohoi ...

  6. 深度探索Hyperledger技术与应用之超级账本初体验(附部署代码)

    2019独角兽企业重金招聘Python工程师标准>>> 本章零基础地介绍了如何快速体验超级账本搭建的区块链网络,我们先绕过了比较复杂的初始化配置,用官方提供的fabric-sampl ...

  7. AMD的AI策略与Intel和Nvidia有何不同?

    雷锋网按:Hot Chips 31本周在美国硅谷举办,两款最大的芯片发布引人注意.分别是Cerebras最大的深度学习芯片WSE,还有赛灵思发布全球最大的FPGA.Intel发布的两款AI芯片Nerv ...

  8. 基于PredictionIO的推荐引擎打造,及大规模多标签分类探索

     基于PredictionIO的推荐引擎打造,及大规模多标签分类探索 摘要:在2015年3月21日的北京Spark Meetup第六次活动上,尹绪森就如何使用PredictionIO打造一个定制化 ...

  9. 自己动手利用KVM和Intel VT实现简单虚拟机

    自己动手利用KVM和IntelVT实现简单虚拟机 计划开发一套虚拟机最小系统.该原型系统会利用Linux原生提供的内核模块kvm.ko,使用该模块提供的API接口,自行开发一个用户态程序,实现一个最基 ...

  10. 阿里云机器学习PAI构建AI集团军作战,联手Intel在AI软硬件领域发力

    第一届"英特尔创新大师杯"深度学习挑战赛已在阿里云天池平台如火如荼的进行中.本次大赛由英特尔主办,阿里云计算平台机器学习 PAI 联合达摩院以及中文信息协会等组织机构联合承办,共有 ...

最新文章

  1. 2020图灵年度好书大赏 | 15周年视频纪念版
  2. vue页面自适应屏幕宽高_Vue+Element UI 高度实时自适应
  3. Python数据分析几个比较常用的方法
  4. only SOY MILK IS NOT ENOUGH FOR BREAKFAST
  5. python 安装echarts
  6. matlab中函数绝对值图像,ex的图像(绝对值的函数图像口诀)
  7. 数据库中复合主键与联合主键
  8. ZeroMQ设置超时等待
  9. win2003server域控服务器安装及设置
  10. C语言自己写代码实现的strcmp函数
  11. 淘宝/天猫优惠券获取API 接口
  12. html圆形头像的制作
  13. Flutter 实现一款简单的音乐播放器
  14. 如何合理选择AI加速器?
  15. Banner本地图片轮播图
  16. 一文2500字Robot Framework自动化测试框架超强教程
  17. 我要减肥~~~~~!!!(信誓旦旦)
  18. win7正版微软给你
  19. cenos需要注意的小功能
  20. Next.js v4.1.4 文档中文翻译

热门文章

  1. DSSM模型的原理简介,预测两个句子的语义相似度
  2. JZ29 最小的K个数 剑指Offer 40
  3. 决策树算法中导致递归返回的三种情况
  4. matlab聚类分析_数据挖掘——聚类分析
  5. Oauth三种认证方式
  6. 彻底解决git中.gitignore文件失效原因及解决办法
  7. 程序员的十个经典算法
  8. 【Nowcoder - 5666 H Minimum-cost Flow】2020牛客暑期多校训练营(第一场)【最小费用流变形】
  9. python写的代码怎么发给别人_用python 代码 怎么给别人发邮件的两种写法
  10. 在WPF中嵌入WebBrowser可视化页面