《AI开发者的docker实践》之天池竞赛规范

简介: 本篇介绍天池竞赛规范。

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状态怎么办视频教程。

https://tianchi.aliyun.com/course/351/4136

相关文章
|
1月前
|
SQL 数据库 Docker
OBCP实践 - OceanBase Docker 体验
开发者和技术爱好者可以在无需复杂安装配置的情况下迅速搭建OceanBase数据库环境,从而方便地进行功能测试、性能评估或者开发调试等实践活动。同时,由于Docker的便捷性,此方法也支持跨平台部署,使得OceanBase数据库能够在不同的操作系统(如Linux、Windows、macOS)上轻松体验。
79 2
|
2月前
|
人工智能 NoSQL Serverless
基于函数计算3.0 Stable Diffusion Serverless API 的AI艺术字头像生成应用搭建与实践的报告
本文主要分享了自己基于函数计算3.0 Stable Diffusion Serverless API 的AI艺术字头像生成应用搭建与实践的报告
469 6
基于函数计算3.0 Stable Diffusion Serverless API 的AI艺术字头像生成应用搭建与实践的报告
|
2月前
|
运维 云计算 Docker
深入理解与实践:基于Docker的微服务架构优化策略
本文旨在为软件开发和运维人员提供一个全面的指南,探讨如何通过Docker容器技术优化微服务架构。我们不仅深入分析了Docker在微服务环境中的关键作用,还提出了一系列实践策略,以提高部署效率、增强系统稳定性,并确保服务的可伸缩性和安全性。通过具体案例分析和比较传统部署方式的局限性,本文展示了Docker如何成为微服务架构优化不可或缺的工具,旨在帮助读者构建一个更加灵活、高效和可靠的服务环境。
149 1
|
3月前
|
TensorFlow 调度 算法框架/工具
【Hello AI】通过Docker安装并使用cGPU服务
cGPU服务可以隔离GPU资源,实现多个容器共用一张GPU卡。该服务作为阿里云容器服务Kubernetes版ACK(Container Service for Kubernetes)的组件对外提供服务,本文介绍如何通过Docker安装并使用cGPU服务。
|
3月前
|
人工智能 自然语言处理 安全
【AI 现况分析】AI 如何帮助开发者完成自动化测试
【1月更文挑战第27天】【AI 现况分析】AI 如何帮助开发者完成自动化测试
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
【AI 现况分析】AI 如何提高开发效率,在生产中的实践
【1月更文挑战第27天】【AI 现况分析】AI 如何提高开发效率,在生产中的实践
|
1月前
|
Kubernetes Go 开发者
Go语言与Docker容器结合的实践应用与案例分析
【2月更文挑战第23天】本文通过分析实际案例,探讨了Go语言与Docker容器技术结合的实践应用。通过详细阐述Go语言在容器化环境中的开发优势,以及Docker容器技术在Go应用部署中的重要作用,本文旨在为读者提供Go语言与Docker容器结合的具体实现方法和实际应用场景。
|
1月前
|
存储 人工智能 数据库
生成式AI「人人可用」的时代,企业与开发者该怎么做?
有研究称:生成式AI正在从“第一幕”走向“第二幕”,“快速展示正被真正的价值和完整的产品体验所取代”,第二阶段中“生成式AI普惠”应该怎么做呢?
生成式AI「人人可用」的时代,企业与开发者该怎么做?
|
1月前
|
云安全 人工智能 安全
|
1月前
|
Kubernetes 云计算 开发者
云计算中的容器化技术:Docker与Kubernetes的实践
云计算中的容器化技术:Docker与Kubernetes的实践
105 0

热门文章

最新文章