人工智能实战2019 - 第7次做业(1) - 王铈弘

项目 内容
课程 人工智能实战2019
做业要求 第7次做业
课程目标 学习人工智能基础知识
本次做业对个人帮助 学习使用OpenPAI和NNI
参考文献 Train models on OpenPAINeural Network Intelligence

OpenPAI


简介

为了解决基础架构模块的构建、部署、管理和优化,让人工智能领域的研发人员把研究和开发的重心放在创新上,微软亚洲研究院建立OpenPAI — 深度定制和优化的人工智能集群管理平台。经过Docker容器和现有的深度学习框架融合,可做为VScode插件,提供网页客户端。python

使用过程

依照参考教程完成一遍基本使用流程,过程截图以下。git

  • 配置
{
    "jobName": "wangshihong_test_couplet",
    "image": "tobeyqin/pai.build.cu80:my",
    "codeDir": "$PAI_DEFAULT_FS_URI/$PAI_USER_NAME/$PAI_JOB_NAME",
    "dataDir": "$PAI_DEFAULT_FS_URI/Data/$PAI_JOB_NAME",
    "outputDir": "$PAI_DEFAULT_FS_URI/Output/$PAI_JOB_NAME",
    "taskRoles": [
        {
            "name": "test_001",
            "taskNumber": 1,
            "cpuNumber": 2,
            "gpuNumber": 1,
            "memoryMB": 8192,
            "command": "pip3 --quiet install future && cd $PAI_JOB_NAME && chmod +x train.sh && python3 run_samples.py"
        }
    ]
}
  • 运行结果

心得体会

  • 结合VScode客户端,配置简单,对于第一次使用此类机器学习平台的新手友好
  • Web的UI界面简洁,管理Job方式清晰
  • 云部署算力强劲,为用户提供高效的服务
  • 因为笔者没有使用过其余机器学习平台,故不作出对比评测

NNI


简介

NNI(Neural Network Intelligence)是自动机器学习(AutoML)的工具包。它经过多种调优算法来搜索最好的神经网络结构和超参,并支持单机、本地多机、云等不一样运行环境。github

  • 友好的交互界面:NNI提供命令行工具和图形化的控制界面
  • 全面的框架支持:支持多种Python语言的深度学习框架(Pytorch、TensorFlow等)
  • 丰富的调优算法:NNI集成多种Tuner(调参器)和Assessor(评估器),用户能够自由选择
  • 多样的训练模式:NNI支持本地、远程、分布式等多种方式进行模型的参数调优

使用过程

  • 经过配置参数搜索空间的json文件完成NNI设置,借助yml文件运行代码
{
   "dropout_rate":{"_type":"uniform","_value":[0.1,0.5]},
   "conv_size":{"_type":"choice","_value":[2,3,5,7]},
   "hidden_size":{"_type":"choice","_value":[124, 512, 1024]},
   "batch_size":{"_type":"choice","_value":[50, 250, 500]},
   "learning_rate":{"_type":"uniform","_value":[0.0001, 0.1]}
}
  • 修改运行平台为OpenPAI便可实如今线训练

心得体会

  • 配置环境较为繁琐,参考教程的某些细节写得不清楚
  • 在参数较多的状况下,不须要写多重循环,并提供可视化记录,便于调优超参
  • 因为笔者没有使用过其余机器学习平台,故不作出对比评测
相关文章
相关标签/搜索