1.数据集挂载
天池大赛数据集默认以只读形式挂载在/tcdata下(训练集+测试集)
因此本地调试时可通过-v 模拟挂载与线上一致
docker run -it-v /your_data:/tcdata registry.cn-shanghai.aliyuncs.com/xxxx/test:0.1 /bin/bash
2.预训练权重
如果大赛允许使用预训练权重等外部数据,则默认以只读形式挂载在/external_data下,一般情况下如果你需要的权重大赛未提供,可向赛题方提出,需要注意的是所有外部数据必须使用官方在线上提供的,否则如自己放在镜像里提交则在代码审核时直接取消名次。
3.持久化存储
如大赛出现超大数据集,常见视频类竞赛,官方会提供持久化存储以方便选手对数据处理、模型训练等耗时操作的中间结果提供持久化存储空间直到大赛结束。
持久化空间默认以可读写的形式挂载在/myspace下,但是需要注意此空间仅为日常调试时使用,最终排行榜最优成绩对应提交需是端到端完整代码运行得出,不能使用存储空间的中间结果。
4.执行入口
大赛一律以镜像的工作空间目录下run.sh为运行入口,且仅以此进程为程序运行状态如结束的标志。
调试时可在本地执行docker run registry.cn-shanghai.aliyuncs.com/xxxx/test:0.1 sh run.sh模拟测试
5.网络环境
天池大赛一律无网络链接,切记镜像内不要有网络操作否则会导致线上运行时由于无网络触达而导致程序卡住。
6.超时时间
一般大赛“容器镜像”页面会注明一个超时时间,此超时时间为你的代码“从开始运行到完整结束”的整个时间限制,如果你的代码仅仅超出这个时间一点(约30min内)则依然会返回成绩但是此成绩不会计入排行,仅能在日志页面内看到,如果超出这个时间许多还没结束,则会被强制清理掉。
另外 如果涉及流评测(后续大赛会逐渐被流评测代替),
7.日常调试提交
如果你本地有满足赛题的计算资源,那么你日常提交时可以提交打包本地训练好的权重仅在线上做预测过程,这样可以快速出分,提高大赛效率,但是这样的提交在最终是无效的 所以一定注意在大赛要求的最后几天(一般是一周)重新提交最优模型的端到端代码完成数据处理到训练预测全流程,否则最后如果最优成绩无完整代码会被直接淘汰,所以切记!
8.自定义镜像
如需自定义镜像,一定要确保镜像内安装了curl,且Dockerfile 中不能使用ENTRYPOINT
9.线上存储空间大小
物理机存储默认为500G 但是有系统、软件、docker镜像等占用空间,实际可用空间建议通过打印获取,一般大赛足够使用,可不必考虑。
10.线上共享内存大小
共享内存大小无特殊说明情况下默认为内存的一半
docker 本地调试时可指定如--shm_size 64 设置与线上环境大小一致
11.流评测工具包AI-HUB
天池大赛已逐渐全面升级为流评测形式,已规避针对测试集做训练、或者以未来测试条件预测当前数据、或工业流水线对单次预测效率严控等情况
安装:pip install ai-hub
ai-hub 的inferServer模块针对天池大赛流评测定制,详情可参考https://github.com/gaoxiaos/AI_HUB
如果自己构建大赛的infer server 则需要注意API接口默认为tccapi 端口为8080 并实现当收到exit请求时服务自动退出能力
12.常用镜像(含国内源和美西源)
天池为大家构建了常用的竞赛镜像仓库,并更新维护。点击直达
tips:
1.如有list中缺失的可在大赛群中提出诉求。
2.list中镜像仓库存放在阿里云上海地域,同地域上传下载速度更快。
13.如何停止正在运行的镜像
点击下方课程链接即可直达如何停止正在运行的镜像视频教程。
https://tianchi.aliyun.com/course/351/4132
14.一直处于waiting状态怎么办
点击下方课程链接即可直达一直处于waiting状态怎么办视频教程。