0

我想在关于云端数据科学体验的笔记本中使用英特尔 BigDL 。

我该如何安装它?

4

2 回答 2

3

如果您的笔记本由 DSX 中的 Apache Spark 即服务实例支持,则安装 BigDL 很简单。但是你必须先收集一些版本信息。

  1. 哪个 Spark 版本?目前,2.1 是 DSX 支持的最新版本。
    使用 Python,您只能为每个服务的一个 Spark 版本安装 BigDL。
  2. 哪个 BigDL 版本?目前,0.3.0 是最新的,它支持 Spark 2.1。
    如有疑问,请查看下载页面。Spark fixlevel 无关紧要。

使用此信息,您可以确定 Maven 存储库中所需 BigDL JAR 文件的 URL。对于示例版本,BigDL 0.3.0 和 Spark 2.1,下载 URL 是
https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_2.1/0.3.0/bigdl-SPARK_2 .1-0.3.0-jar-with-dependencies.jar

对于其他版本,根据需要替换该 URL 中的 0.3.0 和 2.1。请注意,这两个版本都出现了两次,一次在路径中,一次在文件名中。

为 Python 安装

您需要 JAR 和匹配的 Python 包。Python 包只依赖于 BigDL 的版本,不依赖于 Spark 的版本。可以从 Python 笔记本执行安装步骤:

  1. 安装 JAR。

    !(export sv=2.1 bv=0.3.0 ; cd ~/data/libs/ && wget  https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_${sv}/${bv}/bigdl-SPARK_${sv}-${bv}-jar-with-dependencies.jar)
    

    这里将 Spark ( sv) 和 BigDL ( bv) 的版本定义为环境变量,因此您可以轻松调整它们而无需更改 URL。

  2. 安装 Python 模块。

    !pip install bigdl==0.3.0 --no-deps | cat
    

    如果要在 Python 版本之间切换笔记本,请对每个 Python 版本执行一次此步骤。(如果没有--no-deps,将安装一个冲突的 pyspark 版本。)

重启笔记本内核后,BigDL 就可以使用了。

(不)为 Scala 安装

如果您按照上述为 Python 安装 JAR,它也可以在 Scala 内核中使用。

如果你想在 Scala 中独占使用 BigDL,最好不要安装 JAR。相反,请使用%AddJar笔记本开头的魔法。最好在第一个代码单元中执行此操作,以避免类加载问题。

%AddJar https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_2.1/0.3.0/bigdl-SPARK_2.1-0.3.0-jar-with-dependencies.jar

通过不安装 JAR,您可以获得在共享相同服务的不同 Scala 笔记本中使用不同版本的 Spark 和 BigDL 的灵活性。安装 JAR 后,您可能会遇到该 JAR 与您使用%AddJar.

清理

如果要安装不同版本的 BigDL,则必须先进行清理。以下是检查已安装内容并删除它的命令。从 Python 笔记本执行这些命令。

  • 检查安装了哪些 JAR。如果输出为空,则没有安装。

    !find ~/data/libs -name bigdl-\*
    
  • 检查安装了哪些 Python 模块。如果输出为空,则未安装 BigDL。

    !pip freeze | grep -i BigDL
    
  • 删除已安装的 BigDL JAR。

    !find ~/data/libs -name bigdl-\* -exec rm -vf {} +
    
  • 删除当前 Python 版本的已安装 BigDL Python 模块。

    !rm -rf ~/.local/lib/python${_py_version_}/site-packages/{bigdl,BigDL}*
    

    如果重新安装失败并显示“多个 dist-info 目录”消息,请执行:

    !rm -rf $PIP_BUILD
    
于 2017-11-14T09:56:16.567 回答
1

DSX 现在支持 BigDL。在此处查看包含详细信息的博客:https ://medium.com/ibm-data-science-experience/using-bigdl-in-data-science-experience-for-deep-learning-on-spark-f1cf30ad6ca0?source= collection_home---4--------1----------------

于 2017-12-18T20:19:03.760 回答