华为云用户手册

  • 表格式定义 KV表格式定义:Key是列名的index,Value支持BIGINT,DOUBLE和STRING类型。在该组件中可以输入用户定义的key_map表,是列名和Key的映射,但无论是否输入key_map表,该组件都会输出key_map表记录转化后的列名和Key的映射。例如1:10,2:20和3:30。 key_map表格式定义:包含列名和index的映射以及类型信息的col_name,col_index和col_datatype,这三列类型要求是STRING,当col_datatype缺失时,默认值为double类型。 col_name col_index col_datatype col1 1 bigint col2 2 double
  • 样例 没有kepmap表 inputs = { "dataframe": input_df, "keymap_dataframe":None} params = { "inputs": inputs, "kv_col_name": "kv", "append_col_names": "rowid", "kv_delimiter": ":", "item_delimiter": ",", "top1200": True, }
  • 参数说明 参数 是否必选 参数说明 默认值 feature_index_list 是 feature列的index,不同index之间以','分割。举例: 1,2,3,4 "" label_index 是 label列的index。 举例:5 "" hidden_layer_list 是 隐藏层神经元的个数,不同数值之间以','分割,每个数值代表每一层神经元的个数。 int类型,范围[] "10,5" hidden_layer_activation 是 隐藏层激活函数,可选;范围['Sigmoid','ReLU'] Sigmoid epochs 是 训练迭代次数,int类型,范围[] 4 batch_size 是 batch_size大小,int类型,范围[] 24 learning_rate 是 学习率,double类型,范围[0,10] 0.01
  • 参数说明 参数 是否必选 参数说明 默认值 soften_cols 是 需要进行特征异常平滑处理的列,逗号分隔。 无 soften_method 是 特征平滑方法,可选z-score,min-max-per,min-max-thresh,boxplot。 "z-score" keep_original 是 是否保留原始列,如果保留则新增列,列名为原始列前加'soften_'。 False cl 否 置信水平,当选择z-score方法时需要配置此参数。 1 min_per 否 最低百分位。当平滑方法为min-max-per时需要配置该参数。 0.0 max_per 否 最高百分位。当平滑方法为min-max-per时需要配置该参数。 0.1 min_thresh 否 阈值最小值。当平滑方法为min-max-thresh时需要配置该参数。 -9999 max_thresh 否 阈值最大值。当平滑方法为阈值平滑时需要配置该参数。 9999 is_sparse 是 是否为k:v的稀疏特征, 如果指定该列,soften_cols参数只支持选择稀疏特征列kv_col中的列名。 False kv_col 否 如果为稀疏特征,指定稀疏特征列名。 "kv" item_spliter 否 稀疏特征的分隔符。 "," kv_spliter 否 稀疏特征key和value的分隔符。 ":"
  • 概述 特征异常平滑算子用于将数据中的异常数据平滑到一定的区间,可选择采用箱线图、阈值、百分位和z-score的方法确定平滑区间。 z-score方式:计算所需要平滑的特征的均值mean和标准差std,并引入置信因子cl 平滑区间上界: 平滑区间下界: min-max-per方式:通过上下百分位计算,假设需要平滑的特征列最大值为max,上百分位为max_per,下百分位为min_per 平滑区间上界: 平滑区间下界: min-max-thresh方式:直接指定平滑区间的上界和下界 boxplot方式:通过箱线图的方式计算平滑区间 中位数(Q2 / 50th百分位数):数据集的中间值; 下四分位数(Q1 / 25百分位数):最小数(不是“最小值”)和数据集的中位数之间的中间数; 上四分位数(Q3 / 75th Percentile):数据集的中位数和最大值之间的中间值(不是“最大值”); 四分位间距(IQR):第25至第75个百分点的距离 上边缘:Q3 + 1.5 * IQR 下边缘:Q1 -1.5 * IQR 平滑区间上界:上边缘 平滑区间下界:下边缘
  • 输入参数说明 参数名称 参数描述 参数要求 doc_col_name 分词后的文本列 string类型;必填;多列时每列当做单独的句子处理 doc_sep 分词列中的词分隔符 string类型;必填;默认为" " min_count 最小词频 integer类型;非必填;默认为5,小于该值的词会被过滤掉,不填则识别为0,取值范围[0,2147483647] window_size 滑动窗口大小 integer类型;非必填;默认为整行,取值范围[1, 2147483647] partitions 数据重分区数 integer类型;非必填;取值范围[1,5000]; partitions 大数据量情况下建议partitions重分区数取大一些,100w长文本数据建议取1000,500w长文本数据建议取2000,如果在前两种场景下用户自定义partitions小于需求值,系统会自动替换为需求值(即前面的1000,2000)。 资源配置 数据量较大时建议采用更大的资源配置,可以设置executor memory大一些,参考配置如下: cluster 32配置: --executor-memory 8G \ --executor-cores 2 \ --num-executors 14 \ --driver-cores 4 \ --driver-memory 15G \ cluster 64配置: --executor-memory 24G \ --executor-cores 6 \ --num-executors 10 \ --driver-cores 4 \ --driver-memory 15G \ 参数配置 如果运行效率过慢,可考虑增大资源配置,或修改min_count、window_size参数,min_count大一些,window_size小一些。
  • 概述 承接分词结果,计算一个文档里单词两两之间的互信息值(PMI)。PMI计算公式如下: 相关概念解释: 共现对儿:一句话里面如果两个词在句子里的距离小于等于定义的滑动窗口大小,则这两个词共现形成共现对儿。 P(x,y):x,y为两个词,P(x,y)指两个词的共现概率,等于两个词的共现次数N(x, y)除以所有共现对儿的个数N。 P(x):指x与其他词共现的概率,等于x出现在所有共现对儿中的次数N(x)除以所有共现对儿的个数N。 P(y)同理。
  • 样例 数据输入 input_table input Try to try it how to try it Need to try it You try to do do something How can you these days still not try it not do anything It is a good chance to try also you can do it You are right that it is a good chance to try 配置流程 运行流程 输入参数 输出结果 word1 word2 word1_count word2_count co_occurrences_count pmi You a 11 16 1 -0.36646 You chance 11 16 1 -0.36646 You do 11 23 2 -0.03622 You good 11 16 1 -0.36646 You is 11 16 1 -0.36646 You it 11 34 1 -1.12023 You to 11 32 2 -0.36646 You try 11 38 2 -0.53831 a can 16 15 1 -0.67662 a chance 16 16 2 -0.04801 a do 16 23 1 -1.10406 a good 16 16 2 -0.04801 a is 16 16 2 -0.04801 a it 16 34 2 -0.80178 a to 16 32 2 -0.74116 a try 16 38 2 -0.91301 a you 16 15 1 -0.67662 can chance 15 16 1 -0.67662 can do 15 23 2 -0.34638 can good 15 16 1 -0.67662 can is 15 16 1 -0.67662 can it 15 34 2 -0.73724 can not 15 12 2 0.304211 can to 15 32 1 -1.36977 can try 15 38 2 -0.84847 can you 15 15 2 0.081068 chance do 16 23 1 -1.10406 chance good 16 16 2 -0.04801 chance is 16 16 2 -0.04801 chance it 16 34 2 -0.80178 chance to 16 32 2 -0.74116 chance try 16 38 2 -0.91301 chance you 16 15 1 -0.67662 do do 23 23 1 -1.46697 do good 23 16 1 -1.10406 do is 23 16 1 -1.10406 do it 23 34 2 -1.16469 do not 23 12 2 -0.12323 do to 23 32 3 -0.6986 do try 23 38 4 -0.58276 do you 23 15 2 -0.34638 good is 16 16 2 -0.04801 good it 16 34 2 -0.80178 good to 16 32 2 -0.74116 good try 16 38 2 -0.91301 good you 16 15 1 -0.67662 is it 16 34 2 -0.80178 is to 16 32 2 -0.74116 is try 16 38 2 -0.91301 is you 16 15 1 -0.67662 it it 34 34 1 -2.2487 it not 34 12 2 -0.5141 it to 34 32 7 -0.24217 it try 34 38 8 -0.28048 it you 34 15 2 -0.73724 not not 12 12 1 -0.16579 not try 12 38 2 -0.62532 not you 12 15 2 0.304211 to to 32 32 1 -2.12745 to try 32 38 8 -0.21986 to you 32 15 1 -1.36977 try try 38 38 1 -2.47115 try you 38 15 2 -0.84847
  • 功能亮点 免费算力 CodeLab内置了免费算力,包含CPU和GPU两种。您可以使用免费规格,端到端体验ModelArts Notebook能力。也可使用此免费算力,在线完成您的算法开发。 即开即用 无需创建Notebook实例,打开即可编码。 高效分享 ModelArts在AI Gallery中提供的Notebook样例,可以直接通过Run in ModelArts,一键打开运行和学习,并且可将样例修改后分享到AI Gallery中直接另存用于个人开发。 同时,您开发的代码,也可通过CodeLab快速分享到AI Gallery中给他人使用学习。
  • 体验CodeLab 进入CodeLab主页。 从管理控制台总览页进入,展示CodeLab首页。 图2 CodeLab首页 常用功能。 CodeLab的界面依托于JupyterLab,其相关的常见功能与JupyterLab相同。 常用操作指导可参见JupyterLab操作指导:JupyterLab简介及常用操作。 由于CodeLab的存储为系统默认路径,在使用“上传文件”或“下载文件至本地”时,只能使用JupyterLab页面提供的功能。 如需使用大文件上传和下载的功能,建议您前往Notebook,创建一个收费的实例进行使用。 切换规格。 CodeLab支持CPU和GPU两种规格,在右侧区域,单击切换规格,修改规格类型。 图3 切换规格 资源监控。 在使用过程中,如果想了解资源使用情况,可在右侧区域选择“Resource Monitor”,展示“CPU使用率”和“内存使用率”。 图4 资源监控 分享副本到AI Gallery。单击右上角的,将修改后的Notebook样例保存分享到AI Gallery中,供自己或他人学习使用。 图5 分享到AI Gallery 分享成功后,通过分享链接可以打开分享的副本,也可以在AI Gallery中找到分享的Notebook。 图6 发布成功
  • 使用限制 CodeLab默认打开,使用的是CPU计算资源。如需切换为GPU,请在右侧窗口,更换GPU规格。 在ModelArts控制台的“总览”界面打开CodeLab,使用的是CPU或GPU资源,无法使用Ascend资源。 如果是AI Gallery社区的Notebook案例,本身使用的资源是Ascend的,那么“Run in ModelArts”跳转到CodeLab,就可以使用昇腾卡进行训练,也支持切换规格。 自启动后,免费规格默认可使用1小时,请注意右上角的剩余时长。超过1小时后,可执行续期操作,且系统每隔一段时间,将提醒确认下续期。 免费的CodeLab主要用于体验,72小时内未使用,将释放资源。保存在其中的代码文档将丢失,请注意备份文件以及使用时长。
  • 上传本地大文件(100MB~5GB)至JupyterLab 对于大小超过100MB不超过5GB的文件可以使用OBS中转,系统先将文件上传至OBS(对象桶或并行文件系统),然后从OBS下载到Notebook。下载完成后,ModelArts会将文件自动从OBS中删除。 例如,对于下面这种情况,可以通过“OBS中转”上传。 图1 通过OBS中转上传大文件 如果使用OBS中转需要提供一个OBS中转路径,可以通过以下三种方式提供: 图2 通过OBS中转路径上传 仅第一次单击“OBS中转”需要提供OBS中转路径,以后默认使用该路径直接上传,可以通过上传文件窗口左下角的设置按钮更新OBS中转路径。如图6所示。 方式一:在输入框中直接输入有效的OBS中转路径,然后单击“确定”完成。 图3 输入有效的OBS中转路径 方式二:打开OBS File Browser选择一个OBS中转路径,然后单击“确定”完成。 图4 打开OBS File Browser 方式三:单击“使用默认路径”完成。 图5 使用默认路径上传文件 图6 设置本地文件OBS中转路径 完成OBS中转路径设置后,开始上传文件。 图7 上传文件 解压缩文件包 将文件以压缩包形式上传至Notebook JupyterLab后, 可在Terminal中解压缩文件包。 unzip xxx.zip #在xxx.zip压缩包所在路径直接解压 解压命令的更多使用说明可以在主流搜索引擎中查找Linux解压命令操作。 父主题: 上传本地文件至JupyterLab
  • 什么是动态挂载OBS并行文件系统 并行文件系统(Parallel File System)是 对象存储服务 (Object Storage Service,OBS)提供的一种经过优化的高性能文件系统,详细介绍可以参见并行文件系统。 在ModelArts运行态的Notebook容器中,采用动态挂载特性,将OBS对象存储模拟成本地文件系统。其本质是通过挂载工具,将对象协议转为POSIX文件协议。挂载后应用层可以在容器中正常操作OBS对象。
  • 本地IDE操作流程 ModelArts支持通过本地IDE环境远程连接到Notebook中,开发基于PyTorch、TensorFlow和MindSpore引擎的AI模型。具体操作流程如下图所示。 图1 使用本地IDE开发流程 配置本地IDE 在用户的PC端配置本地IDE环境。 支持通过PyCharm、VS Code、SSH工具本地IDE连接云上Notebook。PyCharm和VS Code可以使用插件自动化配置,也可以手工配置。 创建Notebook实例 在ModelArts控制台上创建一个Notebook开发环境实例,选择要使用的AI框架,并开启SSH远程开发功能。 使用本地IDE远程连接到ModelArts的开发环境中。 上传数据和代码至开发环境中,进行代码调试。 代码直接复制至本地IDE中即可,本地IDE中会自动同步至云上开发环境。 不大于500MB数据量直接复制至本地IDE中即可。 创建训练作业大于500MB数据量请先上传到OBS中,从OBS上传到云硬盘EVS。 将调试好的训练脚本和用于训练的数据集上传至OBS目录。 提交训练作业。提交训练作业方式如下: 在本地IDE中提交训练作业 可以通过调用ModelArts提供的SDK,创建训练作业,上云训练,调用SDK创建训练作业的操作请参见调用SDK创建训练作业。 可以基于PyCharm ToolKit直接提交训练作业,具体参考使用PyCharm ToolKit提交训练作业。 也可以通过调用ModelArts提供的SDK,创建训练作业,上云训练,调用SDK创建训练作业的操作请参见调用SDK创建训练作业。 在ModelArts的Console控制台页面中提交训练作业,具体参考创建训练作业。 父主题: 本地IDE
  • 基于learner.predict进行模型推理 learner.predict( img_path='your_local_path_of_image', checkpoint='your_local_path_of_pretrained_model', gpu_ids=None, save_dir='your_local_path_for_saving_output' ) 表4 learner.predict参数 参数名称 可选/必选 参数类型 参数描述 img_path 必选 string 图片路径,当前predict仅支持推理图片。 checkpoint 可选 string 预训练模型路径,默认为None。当基于learner.fit完成训练且该参数为None,则基于训练后的模型参数进行推理。如果指定checkpoint路径,则加载对应路径的模型参数进行推理。 gpu_ids 可选 int/list 推理时使用的GPU,默认为None(使用cpu进行推理)。 save_dir 可选 string 默认为初始化Learner时指定的work_dir,可指定其他本地路径。 model 可选 Model object 自定义Model对象,仅用于open-mmlab系列模型,默认为None。默认值时使用基于learner.fit训练好的模型进行推理。 score_thr 可选 float 推理时结果置信度阈值,默认为0.3,仅用于open-mmlab系列模型。 ret_vis 可选 boolean 是否可视化推理结果,默认为False,仅用于open-mmlab系列模型。
  • 基于learner进行模型评估 learner.validate( data=db, checkpoint="your_local_path_of_pretrained_model", gpu_ids=[0] ) 表3 learner.validate参数 参数名称 可选/必选 参数类型 参数描述 data 可选 DataBlock object 数据集对象,默认为None,初始化方法参考DataBlock模块。默认值时会基于构建好的DataBlock对象中的validation data进行模型评估。 checkpoint 可选 string 预训练模型路径,默认为None。当基于learner.fit完成训练且该参数为None,则基于训练后的模型参数进行评估。如果指定checkpoint路径,则加载对应路径的模型参数进行评估。 gpu_ids 可选 int/list 模型评估时使用的GPU序号。open-mmlab系列模型默认使用0号卡。ivg系列可指定,如0或者[0, 1]。 show_score_thr 可选 float 评估时预测结果置信度阈值,默认为0.5,仅用于open-mmlab系列模型。 out 可选 string 评估结果pkl文件保存路径,默认为None,仅用于open-mmlab系列模型。
  • 基于learner进行模型训练 learner.fit( lr=0.001, max_epochs=5, weight_decay=0.005, seed=None, checkpoint=None, gpu_ids=[0], world_size=1, local_size=1, launch_remote=False ) 表2 learner.fit参数 参数名称 可选/必选 参数类型 参数描述 lr 可选 float 学习率参数,默认为0.001。 max_epochs 可选 int/float 最大训练epoch数,默认为5。 weight_decay 可选 float 权重衰减,默认为0.005。 seed 可选 int 训练随机数,默认为None。 checkpoint 可选 string 预训练模型路径,优先级高于初始化Learner和Model时的路径参数,指定checkpoint入参后会覆盖初始化Learner或Model时对应checkpoint的模型参数。 gpu_ids 可选 int / list open-mmlab系列默认使用0号卡进行训练。ivg系列可指定,如0或者[0]或者[0,1]。 world_size 可选 int 分布式训练节点数量,默认为1,暂不支持分布式训练。 local_size 可选 int 单个节点中的GPU数量,默认为1,暂不支持分布式训练。 launch_remote 可选 boolean 提交训练作业,默认为False,暂不支持基于API提交训练作业。
  • 概述 向量召回评估算子计算召回的hitrate,用于评估召回结果的好坏,hitrate越高表示训练产出的向量去召回向量的结果越准确。支持u2i召回和i2i召回的计算。u2i召回时,拿user(用户)的向量去召回top k个items(物品),i2i召回时拿item的向量去召回top k个items。 hitrate的具体计算方法为,假设真实trigger(u2i召回时为user,i2i召回时为item)的关联item集合为M,而实际召回了top k个和trigger相似的items,如果其中落在了M里的集合为N,则top k hitrate为|N| / |M|。
  • 输入 参数 子参数 参数说明 inputs item_embedding inputs为字典类型,item_embedding为pyspark中的DataFrame类型对象,代表物品向量。 inputs true_sequence true_sequence为pyspark中的DataFrame类型对象,代表真实关联表。 inputs user_embedding user_embedding为pyspark中的DataFrame类型对象,代表用户向量。
  • 背景信息 创建和使用Notebook需要消耗资源,需要收费。根据您选择的资源不同,收费标准不同,针对不同类型资源的价格,详情请参见产品价格详情。 “运行中”的Notebook将一直收费,当您不需要使用时,建议停止Notebook,避免产生不必要的费用。在创建Notebook时,也可以选择开启自动停止功能,在指定时间内停止运行Notebook,避免产生不必要的费用。 只有处于“运行中”状态的Notebook,才可以执行打开、停止、删除和保存镜像操作。
  • Step3 使用MLS操作界面 此时,已经进入了MLS的可视化编辑页面MLS Editor,可以通过拖拉拽的方式,完成模型开发。此处介绍MLS操作界面。 MLS由资产管理和资产编排两个功能模块组成,完整界面如图8所示,左边是资产管理界面,右边是资产编排界面。 图8 MLS资产管理和资产编排界面 其中资产管理模块主要用于管理资产,包括算子、算链两类资产。可以通过点击左侧导航条上的图标进入. 资产编排模块用于编排资产,可以通过Launcher界面的“MLS Editor”图标进入,也可通过资产管理模块中的算链子模块打开或新建算链。 资产编排过程中,开发者可以从左侧资产管理界面,拖拽预置算子或自定义算子至右侧资产编排界面,将算子连接成一个或若干个有向无环图DAG,从而构建出一个完整算链。 此外,开发者也可以从左侧资产管理界面的“算链”选项卡中打开预置算链进行编排与修改,形成一个新的算链。 编排完成后,开发者可以点击算链编排界面顶部的图标一键运行,进行机器学习模型训练与预测。 快速上手使用MLS进行模型开发,可以参考ML Studio快速入门。 MLS镜像中预置了大量的算子方便您使用,预置算子的详细说明请参考预置算子说明。 您也可以在MLS Editor中编写自己的算子,具体操作请参考编写自定义算子。 MLS同时预置了部分算链,方便用户使用,用户也可以编写自己的算链,相关的详细操作可以参考算链操作。
  • 样例 数据样本 id sentence 1 ball ball fun planet galaxy 2 referendum referendum fun planet planet 3 planet planet planet galaxy ball 4 planet galaxy planet referendum ball 配置流程 运行流程 参数设置 结果查看 P(Z) P(Z|D) P(D|Z) P(Z|W) vocab
  • 预置算子 如图1中红色框所示,预置算子列表目前分为数据特征、输入输出、模型工程三大类。带标志的是算子类别,比如数据特征类,该类包含数据特征的子类数据分析、特征工程、数据处理及其算子。详细的预置算子说明请参考预置算子说明章节。 单击算子类对象前图标,即可展开显示子类和算子。 双击数据特征类,展开其子类数据分析、特征工程、数据处理,双击数据分析类,展开其数据分析算子。 单击算子类对象前图标,即可收回其子类和算子。 预置算子不可修改。如果需进行修改,需拖拽至画布中,右键算子选择编辑代码进行修改,修改后会保存为新的算子,修改内容不会覆盖原有的预置算子。
  • 自定义算子 自定义算子类别中展示开发者自行开发的算子,如图1中蓝色框所示,初始为空。 该界面包含新增自定义算子和上传自定义算子两个按钮,开发者可以直接在线编写算子或上传本地已有的算子。 在当前版本中,一个自定义算子对应一个ipynb文件,开发者可使用Jupyter Lab直接编写算子。并对自定义算子进行删除、重命名、上传或下载操作。 由于算子使用过程中会将ipynb文件中的所有Cell合并为一个Cell,因此建议开发者直接将算子代码写在一个Cell中。
  • 命令概览 $ ma-cli auto-completion -h Usage: ma-cli auto-completion [OPTIONS] [[Bash|Zsh|Fish]] Auto complete ma-cli command in terminal. Example: # print bash auto complete command to terminal ma-cli auto-completion Bash Options: -H, -h, --help Show this message and exit. # 默认显示Bash Shell自动补全命令 $ ma-cli auto-completion Tips: please paste following shell command to your terminal to activate auto complation. [ OK ] eval "$(_MA_CLI_COMPLETE=bash_source ma-cli)" # 执行上述命令,此时Terminal已经支持自动补全 $ eval "$(_MA_CLI_COMPLETE=bash_source ma-cli)" # 显示Fish Shell自动补全命令 $ ma-cli auto-completion Fish Tips: please paste following shell command to your terminal to activate auto complation. [ OK ] eval (env _MA_CLI_COMPLETE=fish_source ma-cli)
  • 样例 数据样本 鸢尾花数据集,species列代表鸢尾花种类,共有Iris-setosa、Iris-versicolor和Iris-virginica三种类别,每种类别样本数量为50。 图1 数据样本 配置流程 运行流程 参数设置 图2 参数设置(按比例拆分) 图3 参数设置(按阈值拆分) 按petal_width列划分,小于等于2.0的数据划分至子数据集1,大于2.0的数据划分至子数据集2。 查看结果 按比例拆分 图4 子数据集1 图5 子数据集2 按阈值拆分 图6 子数据集1 图7 子数据集2
  • 参数说明 参数 是否必选 参数说明 默认值 fraction 否 分割比例,比例值对应第一个数据集的行数。 0.7 id_col 否 id列,按比例拆分的情况下,如果设置该列,则该列相同的样本不会被拆分,按阈值拆分则设置该列无效。 无 threshold_col 否 用于阈值拆分的列。 无 thrshold 否 拆分阈值。 0.0 seed 否 随机数种子。 1234 如果设置fraction,则按照比例拆分,阈值列和阈值设置无效。
  • Step6 提交ModelArts训练作业 参考Step2,修改外壳的配置文件。 填写OBS桶信息 obs_bucket = 'obs://my_bucket/my_object' 按需修改runner里的Adapter参数。 adapter=dict( requirements=f'{work_dir}/algorithm/requirements.txt', framework_type='PyTorch', framework_version='PyTorch-1.4.0-python3.6', instance_type='modelarts.p3.large.public', pool_id=None, downloads=dict( src=[f'{obs_bucket}/{alg_cfg["data_root"]}', f'{obs_bucket}/{alg_cfg["pretrained"]}'], dst=[alg_cfg['data_root'], alg_cfg['pretrained']], ), uploads=dict( src=[run_dir], dst=[f'{obs_bucket}/{run_dir}'], ), ), 在Terminal中输入下述命令来提交ModelArts训练作业完成训练。 python manage.py run --launch_remote --cfg algorithms/ivgPose/config/sample/config.py --gpus 0 提交完训练作业后,可以在ModelArts控制台交互式界面看到当前训练作业的状态(如排队中、运行中等),可以在config.py配置的{run_dir}/{训练作业名称目录}下看到ModelArts上的训练日志。
  • Step1 上传数据集到开发环境中 按照不同算法定义的数据结构和格式准备好数据集。 如果数据集在OBS桶里,在Terminal里可执行下述命令将OBS里的数据下载到Notebook环境中。 python manage.py copy --source obs://my_bucket/my_data_dir/ --dest /home/ma-user/work/my_data_dir 如果数据集比较小且存放在PC上。 如果使用的本地IDE是VS Code,可以通过拖放方式复制到VS Code连接的Notebook中。
  • Step2 修改配置文件 配置文件主要包括算法配置文件和算法参数文件,例如: 算法配置文件:./algorithms/ivgPose/config/sample/config.py 算法参数文件:./algorithms/ivgPose/config/sample/simplepose_resnet50_coco_256x192.py 根据需要修改训练相关参数,如数据集路径data_root、runner中的train_args参数以及train参数等。如下述代码所示。 config.py文件 train_args=dict( cfg=alg_cfg['cfg'], output_dir=run_dir, data_root=alg_cfg['data_root'], load_from=None, gpus=None, lr=None, max_epoch=5, samples_per_gpu=None, resume_from=None, pretrained=alg_cfg['pretrained'], train_data_root=None, val_data_root=None, ), simplepose_resnet50_coco_256x192.py文件 train = dict( save_period=-1, val_period=5, best_saver=dict(key_indicator='AP', rule='max'), ema=dict(type='ExpEMA') )
共100000条