首页 > 解决方案 > 英特尔在机器学习服务计算上优化了 Python

问题描述

是否可以在具有英特尔优化 Python 发行版的容器中的 Azure 机器学习服务上运行 Python 脚本或 Estimator 步骤?我知道这在Azure 数据科学 VM上可用(或在此处描述),但我不知道如何将其用作 Azure 机器学习服务计算目标。

对于我当前的用例,我对在 aml 服务容器中使用 mkl 链接的 numpy 包特别感兴趣。

注意:在容器内运行 numpy.show_config() 表明 numpy 链接到 openblas 而不是 mkl

blas_mkl_info:
  NOT AVAILABLE
blis_info:
  NOT AVAILABLE
openblas_info:
    libraries = ['openblas', 'openblas']
    library_dirs = ['/usr/local/lib']
    language = c
    define_macros = [('HAVE_CBLAS', None)]
blas_opt_info:
    libraries = ['openblas', 'openblas']
    library_dirs = ['/usr/local/lib']
    language = c
    define_macros = [('HAVE_CBLAS', None)]
lapack_mkl_info:
  NOT AVAILABLE
openblas_lapack_info:
    libraries = ['openblas', 'openblas']
    library_dirs = ['/usr/local/lib']
    language = c
    define_macros = [('HAVE_CBLAS', None)]
lapack_opt_info:
    libraries = ['openblas', 'openblas']
    library_dirs = ['/usr/local/lib']
    language = c
    define_macros = [('HAVE_CBLAS', None)]

标签: azure-machine-learning-service

解决方案


Azure ML 基础映像使用使用 MKL 的Miniconda Python 发行版。

您可以在此处找到基本映像的详细信息:https ://github.com/Azure/AzureML-Containers

此外,如果您以下列方式使用 Anaconda numpy 安装

conda_dep.add_conda_package("numpy")
runconfig.run_config.environment.python.conda_dependencies = conda_dep

你应该看到这种输出numpy.show_config()

blas_mkl_info:

库= ['blas','cblas','lapack','pthread','blas','cblas','lapack']

library_dirs = ['/azureml-envs/azureml_a8ad8e485613e21e6e8adc1bfda86b40/lib']

define_macros = [('SCIPY_MKL_H', 无), ('HAVE_CBLAS', 无)]

include_dirs = ['/azureml-envs/azureml_a8ad8e485613e21e6e8adc1bfda86b40/include']


推荐阅读