# 自定义算法
Octopus平台支持上传自定义算法。您可通过上传符合平台规范的算法文件,在线创建训练任务,并生成模型用于自动标注。自定义算法可使用训练服务内置的训练框架PyTorch和Tensorflow,支持的Python版本为3.6,训练框架及Python版本将持续扩充;同时训练服务平台提供一套远程开发环境,您可在远程开发环境创建自定义引擎,并调试自定义算法。算法成熟后通过插件上传,同时会在“算法管理”模块同步上传保存。
# 添加自定义算法
在添加算法页面,您需要填写算法基本信息,AI引擎,以及算法参数三部分的内容。
# 操作步骤
单击“训练服务>算法管理>创建训练算法”。
填写算法基本信息
- 名称:包含中英文、数字、“_”“-”,不得超过64个字符;
- 描述:简要描述算法,不包含“@#$%^&*<>\”,不得超过255个字符。
选择AI引擎和样本类型
AI引擎
用户可选择的引擎类型有系统默认和自定义两种。系统内置引擎框架为Tensorflow和PyTorch,支持的Python版本为3.6;用户自定义引擎需提前在“开发环境”中创建成功且能成功运行。创建自定义引擎请参考创建自定义引擎。
样本类型
当前支持图片、3D点云
注意: 自定义算法创建后,不能再修改“AI引擎”和“样本类型”,请认真填写。
配置算法参数
需要指定Boot文件启动路径,填写启动命令参数以及参数值。
Boot文件路径
选择算法文件中的启动文件路径,文件路径为在算法文件中的相对路径,一般为根目录下“xxx.py”。启动文件编写详细说明请参考启动文件基本要求。
参数列表
可以自定义boot文件的启动参数,需要在算法中定义。如下启动文件和参数列表,仅供参考:
说明:
- Key:只能由英文、数字、下划线、逗号组成,且只能以字母开头;
- Value: 只能由英文、数字、下划线、逗号组成。
参数命令
参数命令为运行启动脚本的shell命令,由配置的“Boot文件路径”和“参数列表中参数及参数值”组成,填写后会自动生成如下命令:
Main.py --total_epoches=3 --img_size=[1333,800] --batch_size=1 --optimizer_name=SGD
单击“初始化”,完成算法的初始化过程,进入下一流程。
上传文件
将本地算法文件夹拖入框中,或单击此处选择本地文件夹。文件夹的数量不得超过1个。
文件夹选择完毕后,单击“上传”。
算法文件上传完毕后,单击“上传算法”,提示算法已加入上传队列中,并在界面右上方显示当前算法上传进度,便于您查看算法实时上传进度。
注意: 上传中刷新浏览器会导致文件上传异常,请谨慎操作!
查看算法详情
单击算法名称,查看该算法详细信息。
- 算法详情:算法创建时间、算法使用的AI引擎、更新时间以及算法当前状态等;
- 参数详情:样本类型及来源、算法参数以及boot路径。
编辑算法
算法创建成功后,可以修改算法信息。
删除算法
若自定义算法不再满足业务所需,可将其删除。
注意: 内置算法或算法状态为更新汇总、删除中和创建中的算法不能删除。
查找算法
按照算法名称或算法使用的AI引擎查找算法,在搜索框内输入查找内容进行查找。
上传文件
算法所处状态为“初始化”的自定义算法可上传文件。单击算法名称后“操作”一栏内的“上传文件”,上传本地算法文件。
# 在线编辑算法
您可以在线调试自定义算法,在算法名称后“在线编辑”一栏单击“算法编辑”,进入该算法的在线编辑页面。如图,界面左侧显示的是该算法包内的所有算法文件,以文件树的形式展示,支持新建文件夹和文件以及对已有文件重命名,更改界面基础配置。
注意:
- 在线调试的算法文件不得大于5MB;
- 创建成功的自定义算法允许在线编辑。
新建文件夹:选中文件夹并单击新建,您将新建一个该文件夹的子文件夹;选中工程文件并单击新建,将会新建一个新的文件夹,与您已有的文件夹同级;
新建文件:单击新建,或右键文件夹,单击“新建文件”;
修改文件:右键并单击“重命名”,您可以对文件名称进行修改;
删除文件:右键并单击“删除”,您可以删除文件;
说明:
- 文件(夹)名称不能为空,且不能包含特殊字符“/”;
- 删除后不可恢复,请谨慎操作。
配置界面:单击设置,按照喜好配置界面基本属性,查看快捷键说明;
删除当前算法文件:单击“删除”,删除当前页面的算法文件。删除后不可恢复,请谨慎操作;
保存算法文件:单击“保存”,保存当前算法。算法更新完毕请及时保存。