机器学习之阿里云天池大赛—Docker入门

简介: 本文记录作者参加天池大赛Docker的一个比赛过程。

最近阿里云天池大赛增加了Docker的项目,也有不少项目开始尝试使用Docker跑机器学习模型,本文结合官方手把手教程,重点说明容易踩坑的地方,后续将完成全部赛题要求,关于题目中gpu部分暂时忽略。
1、安装docker
Docker安装部分建议按照大赛教程直接安装即可,建议gpu支持暂时不安装,先实现基础入门,完成赛题第一步的要求,能够得分即可。
2、创建镜像仓库
在阿里云容器服务控制台,创建镜像仓库,一定记住开通容器服务时设置的密码,登录阿里云Docker Registry时需要使用,注意大赛要求镜像区域选择华南1(深圳)。
容器创建完成后可以登录登录阿里云Docker Registry,具体命令可以在镜像仓库管理界面找到。
3、构建镜像并推送
(1)拉取基础镜像
天池准备了常用的python基础镜像,可以直接拉取使用,暂时不用自行构建镜像。

docker pull registry.cn-shanghai.aliyuncs.com/tcc-public/python:3

image.png
图1 镜像拉取结果

(2)准备文件
镜像拉取完成之后,需要准备相关的文件,并写入相关的内容。第一步得分的需要的文件包含Dockerfile、main.py、run.sh、result.json,此处result.json文件只是用于代码测试,实际操作过程中需要按照要求在容器运行过程中中创建json文件并写入信息。
image.png
图2 所需文件

Dockerfile文件

#Dockerfile
#文件参考教程
# Base Images 
## 从天池基础镜像构建(from的base img 根据自己的需要更换,建议使用天池open list镜像链接:https://tianchi.aliyun.com/forum/postDetail?postId=67720) 
FROM registry.cn-shanghai.aliyuncs.com/tcc-public/python:3
##安装python依赖包 
#RUN pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple 
## 把当前文件夹里的文件构建到镜像的根目录下,并设置为默认工作目录 
ADD . /
WORKDIR /
## 镜像启动后统一执行 sh run.sh 
CMD ["sh", "run.sh"]

python文件,名称可自定义,只需可run.sh中执行的文件对应即可

#main.py 
import json
#print("Hello Word")
data = json.dumps({'Q1': 'Hello world', 'Q2': 0, 'Q3':[]},indent=4, separators=(','))
f = open('result.json', 'w')
f.write(data)
f.close()
注意:写入result.json文件的内容中必须包含Q2和Q3的内容,可以为空,如果只包含Q1会报错“Bad input file”

run.sh文件

#bin/bash
python3 main.py

(3)构建镜像并推送
前面已经登录阿里云Docker Registry,此处只需构建并推送即可,注意版本!

#构建
sudo docker build -t registry.cn-shenzhen.aliyuncs.com/xiaohu001/dockerlearn01:0.11 .
#推送
sudo docker push  registry.cn-shenzhen.aliyuncs.com/xiaohu001/dockerlearn01:0.11

4、 提交结果
在大赛提交结果界面设置镜像路径及版本,镜像路径要选择“公网地址”,点击“提交”之后等待执行即可。
image.png
图3 得分情况

目录
相关文章
|
1月前
|
人工智能 自然语言处理 安全
通过阿里云Milvus与PAI搭建高效的检索增强对话系统
阿里云向量检索Milvus版是一款全托管的云服务,兼容开源Milvus并支持无缝迁移。它提供大规模AI向量数据的相似性检索服务,具备易用性、可用性、安全性和低成本等优势,适用于多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等场景。用户可通过PAI平台部署RAG系统,创建和配置Milvus实例,并利用Attu工具进行可视化操作,快速开发和部署应用。使用前需确保Milvus实例和PAI在相同地域,并完成相关配置与开通服务。
|
1月前
|
Java Linux C语言
《docker基础篇:2.Docker安装》包括前提说明、Docker的基本组成、Docker平台架构图解(架构版)、安装步骤、阿里云镜像加速、永远的HelloWorld、底层原理
《docker基础篇:2.Docker安装》包括前提说明、Docker的基本组成、Docker平台架构图解(架构版)、安装步骤、阿里云镜像加速、永远的HelloWorld、底层原理
425 90
|
21天前
|
API 开发工具 Python
阿里云PAI部署DeepSeek及调用
本文介绍如何在阿里云PAI EAS上部署DeepSeek模型,涵盖7B模型的部署、SDK和API调用。7B模型只需一张A10显卡,部署时间约10分钟。文章详细展示了模型信息查看、在线调试及通过OpenAI SDK和Python Requests进行调用的步骤,并附有测试结果和参考文档链接。
2452 11
阿里云PAI部署DeepSeek及调用
|
23天前
|
机器学习/深度学习 人工智能 开发者
DeepSeek安装部署指南,基于阿里云PAI零代码,小白也能轻松搞定!
阿里云PAI平台支持零代码一键部署DeepSeek-V3和DeepSeek-R1大模型,用户可轻松实现从训练到部署再到推理的全流程。通过PAI Model Gallery,开发者只需简单几步即可完成模型部署,享受高效便捷的AI开发体验。具体步骤包括:开通PAI服务、进入控制台选择模型、一键部署并获取调用信息。整个过程简单快捷,极大降低了使用门槛。
|
17天前
|
机器学习/深度学习 分布式计算 大数据
阿里云 EMR Serverless Spark 在微财机器学习场景下的应用
面对机器学习场景下的训练瓶颈,微财选择基于阿里云 EMR Serverless Spark 建立数据平台。通过 EMR Serverless Spark,微财突破了单机训练使用的数据规模瓶颈,大幅提升了训练效率,解决了存算分离架构下 Shuffle 稳定性和性能困扰,为智能风控等业务提供了强有力的技术支撑。
137 15
|
8天前
|
人工智能 自然语言处理 网络安全
基于阿里云 Milvus + DeepSeek + PAI LangStudio 的低成本高精度 RAG 实战
阿里云向量检索服务Milvus版是一款全托管向量检索引擎,并确保与开源Milvus的完全兼容性,支持无缝迁移。它在开源版本的基础上增强了可扩展性,能提供大规模AI向量数据的相似性检索服务。凭借其开箱即用的特性、灵活的扩展能力和全链路监控告警,Milvus云服务成为多样化AI应用场景的理想选择,包括多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等。您还可以利用开源的Attu工具进行可视化操作,进一步促进应用的快速开发和部署。
|
16天前
|
机器学习/深度学习 人工智能 开发者
DeepSeek服务器繁忙?拒绝稍后再试!基于阿里云PAI实现0代码一键部署DeepSeek-V3和DeepSeek-R1大模型
阿里云PAI平台支持零代码一键部署DeepSeek-V3和DeepSeek-R1大模型,用户可轻松实现从训练到部署再到推理的全流程。通过PAI Model Gallery,开发者只需简单几步即可完成模型部署,享受高效便捷的AI开发体验。具体步骤包括开通PAI服务、进入控制台选择模型、一键部署并获取调用信息。整个过程无需编写代码,极大简化了模型应用的门槛。
197 7
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
云上一键部署 DeepSeek-V3 模型,阿里云 PAI-Model Gallery 最佳实践
本文介绍了如何在阿里云 PAI 平台上一键部署 DeepSeek-V3 模型,通过这一过程,用户能够轻松地利用 DeepSeek-V3 模型进行实时交互和 API 推理,从而加速 AI 应用的开发和部署。
|
2月前
|
人工智能 JSON 算法
魔搭支持在阿里云人工智能平台PAI上进行模型训练、部署了!
现在,魔搭上的众多模型支持在阿里云人工智能平台PAI-Model Gallery上使用阿里云算力资源进行模型训练和部署啦!
|
2月前
|
机器学习/深度学习 传感器 运维
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
本文探讨了时间序列分析中数据缺失的问题,并通过实际案例展示了如何利用机器学习技术进行缺失值补充。文章构建了一个模拟的能源生产数据集,采用线性回归和决策树回归两种方法进行缺失值补充,并从统计特征、自相关性、趋势和季节性等多个维度进行了详细评估。结果显示,决策树方法在处理复杂非线性模式和保持数据局部特征方面表现更佳,而线性回归方法则适用于简单的线性趋势数据。文章最后总结了两种方法的优劣,并给出了实际应用建议。
157 7
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例