一文了解人脸识别技术的原理 人脸识别技术是什么( 九 )


一文了解人脸识别技术的原理 人脸识别技术是什么

文章插图
在训练作业基础镜像的规范里,找到了这个命令的解释 。
https://support.huaweicloud.com/engineers-modelarts/modelarts_23_0217.html
根据我们的脚本要求,我使用的是cuda9的镜像:
一文了解人脸识别技术的原理 人脸识别技术是什么

文章插图
官方还给出了另一种方法,就是使用docker file的 。基础镜像的dockerfile也是在训练作业基础镜像的规范里找到的 。可以参考一下的dockerfile:
https://github.com/huaweicloud/ModelArts-Lab/tree/master/docs/custom_image/custom_base
根据自己需求构建自定义镜像环境
由于比较懒,所以还是没有使用Dockerfile的方式自己构建镜像 。我采用的是另一种方式!
因为我们的需求就是cuda 9 还有一些相关的python依赖包,假设官方的镜像提供的是cuda 9的,我们大可以在训练脚本中跟着这个教程加一个requirement.txt 。简单高效快捷就能解决需求!!!下面是教程~~~
https://support.huaweicloud.com/modelarts_faq/modelarts_05_0063.html
上传自定义镜像到SWR
官网教程:
  • https://support.huaweicloud.com/engineers-modelarts/modelarts_23_0085.html#modelarts_23_0085__section19397101102
  • https://support.huaweicloud.com/usermanual-swr/swr_01_0011.html
  • 上传镜像的页面写着,文件解压后不得超过2GB 。但是官方提供的基础镜像就3.11GB,我们加上需要的预训练的模型后镜像是5+GB,所以不能使用页面进行上传的工作,必须使用客户端 。上传镜像首先要创建组织,
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    如果觉得产品文档理解还是比较难,可以尝试一下SWR页面的pull/push镜像体验:
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    这里后面引导了客户如何将本地镜像推上云端,第一步是登陆仓库:
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    第二步拉取镜像,这个我们就用自己打的自定义镜像代替,
    第三步修改组织,使用根据产品文档创建的组织名 。在这一步需要将本地的一个镜像重命名为云上识别的镜像命 。具体看下图解释:
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    第四步推送镜像,
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    当熟练掌握这四步技巧的时候,可以脱离这个教程,使用客户端进行上传 。使用客户端登陆然后上传 。客户端登陆可以使用生成临时docker loging指令 。这个页面在”我的镜像“-> ”客户端上传“->”生成临时docker login指令“中:
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    在本地docker环境中,使用这个生成的临时docker login指令登陆后,使用下面的命令进行上传镜像:
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    使用华为云训练作业进行训练
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    华为云ModelArts提供训练作业给用户进行模型训练 。在训练作业中有预置镜像和可以选择自定义镜像 。预置的镜像包含市面上大部分框架,没有特殊要求的时候,使用这些框架的镜像进行训练也是很方便的 。本次测试还是使用的自定义镜像 。
    自定义镜像中不仅需要在镜像中进行配置自己的环境,假如改变了训练作业启动的方式,还需要修改训练的启动脚本 。从华为云ModelArts官网拉取下来的官方镜像的/home/work/路径下有一个启动脚本”run_train.sh”,自定义的启动脚本需要基于这个脚本进行修改 。主要是要注意 “dls_get_app”,这个是从OBS下载相关的命令 。其他的部分根据自己的训练脚本进行修改 。
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    如果需要上传训练结果或者模型到OBS,需要参考”dls_get_app”加”dls_upload_model”的命令 。在我们这次训练中,上传的脚本如下:
    一文了解人脸识别技术的原理 人脸识别技术是什么

    文章插图
    训练作业进行调试的时候,当前可以使用免费提供的一小时V100 。ModelArts的训练作业一个比较好的地方是方便了我们版本管理 。版本中会记录所有通过运行参数传入到训练脚本里的所有参数,还可以使用版本对比进行参数对比 。还有个比较方便的地方是可以基于某一个版本进行修改,减少了重新输入所有参数这一步骤,比较方便调试 。