Link to this sectionAWS Deep Learning 实例上的 Ultralytics YOLOv5 🚀:完整指南#
搭建高性能 深度学习 环境可能看起来很令人畏惧,尤其是对于新手而言。但别担心!🛠️ 本指南提供了在 AWS Deep Learning 实例上安装并运行 Ultralytics YOLOv5 的分步演练。通过利用 Amazon Web Services (AWS) 的强大功能,即使是 机器学习 (ML) 新手也能快速且经济高效地入门。AWS 平台的 可扩展性 使其成为实验和生产 部署 的理想选择。
YOLOv5 的其他快速入门选项包括我们的 Google Colab Notebook 、Kaggle 环境
、GCP Deep Learning VM 以及我们在 Docker Hub 上提供的预构建 Docker 镜像
。
Link to this section第一步:登录 AWS 控制台#
首先创建一个账户或登录 AWS Management Console。登录后,导航至 EC2 服务仪表板,你可以在此处管理你的虚拟服务器(实例)。

Link to this section第二步:启动你的实例#
在 EC2 仪表板中,点击 Launch Instance 按钮。这将启动创建满足你需求的全新虚拟服务器的过程。

Link to this section选择合适的 Amazon Machine Image (AMI)#
选择正确的 AMI 至关重要。它决定了实例的操作系统和预装软件。在搜索栏中输入 'Deep Learning' 并选择最新的基于 Ubuntu 的 Deep Learning AMI(除非你有对其他操作系统的特定需求)。Amazon 的 Deep Learning AMI 预配置了流行的 深度学习框架(例如 YOLOv5 使用的 PyTorch)和必要的 GPU 驱动程序,从而显著简化了设置过程。

Link to this section挑选实例类型#
对于训练深度学习模型等要求严苛的任务,强烈建议选择 GPU 加速实例类型。与 CPU 相比,GPU 可以显著缩短模型训练所需的时间。选择实例大小时,请确保其内存容量 (RAM) 足以满足你的模型和数据集需求。
注意: 模型和数据集的大小是关键因素。如果你的 ML 任务需要的内存超过了所选实例提供的内存,你需要选择更大的实例类型,以避免性能问题或错误。
在 EC2 实例类型页面 上探索可用的 GPU 实例类型,特别是在 加速计算 (Accelerated Computing) 类别下。

有关监控和优化 GPU 使用情况的详细信息,请参阅 AWS 关于 GPU 监控和优化 的指南。使用 按需定价 (On-Demand Pricing) 比较成本,并探索使用 竞价实例定价 (Spot Instance Pricing) 节省成本的可能性。
Link to this section配置你的实例#
考虑使用 Amazon EC2 竞价实例 (Spot Instances) 以获得更具成本效益的方法。竞价实例允许你竞标未使用的 EC2 容量,价格通常比按需定价有显著折扣。对于需要持久性的任务(即使竞价实例被中断也能保存数据),请选择 持久性请求 (persistent request)。这可确保你的存储卷保持持久。

继续执行实例启动向导的第 4-7 步,以配置存储、添加标签、设置安全组(确保你的 IP 可以访问 SSH 22 端口),并在点击 Launch 前检查你的设置。你还需要创建一个新密钥对或选择一个现有密钥对,以确保安全的 SSH 访问。
Link to this section第三步:连接到你的实例#
一旦你的实例状态显示为 'running',请从 EC2 仪表板中选择它。点击 Connect 按钮查看连接选项。使用本地终端(如 macOS/Linux 上的 Terminal 或 Windows 上的 PuTTY/WSL)中的 SSH 命令示例来建立安全连接。你将需要你在启动期间创建或选择的私钥文件 (.pem)。

Link to this section第四步:运行 Ultralytics YOLOv5#
现在你已通过 SSH 连接,可以设置并运行 YOLOv5 了。首先,从 GitHub 克隆官方 YOLOv5 存储库并进入目录。然后,使用 pip 安装所需的依赖项。建议使用 Python 3.8 或更高版本的环境。当你运行训练或检测等命令时,必要的模型和数据集将自动从最新的 YOLOv5 发布版本 中下载。
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5
# Install required packages
pip install -r requirements.txt环境准备就绪后,你就可以开始将 YOLOv5 用于各种任务了:
# Train a YOLOv5 model on a custom dataset (e.g., coco128.yaml)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640
# Validate the performance (Precision, Recall, mAP) of a trained model (e.g., yolov5s.pt)
python val.py --weights yolov5s.pt --data coco128.yaml --img 640
# Run inference (object detection) on images or videos using a trained model
python detect.py --weights yolov5s.pt --source path/to/your/images_or_videos/ --img 640
# Export the trained model to various formats like ONNX, CoreML, TFLite for deployment
# See https://docs.ultralytics.com/modes/export/ for more details
python export.py --weights yolov5s.pt --include onnx coreml tflite --img 640有关 训练 (Training)、验证 (Validation)、预测 (Inference) 和 导出 (Exporting) 的详细指南,请参阅 Ultralytics 文档。
Link to this section可选插件:增加交换内存 (Swap Memory)#
如果你正在处理非常大的数据集,或者在训练过程中遇到内存限制,增加实例上的交换内存有时会有所帮助。交换空间允许系统使用磁盘空间作为虚拟 RAM。
# Allocate a 64GB swap file (adjust size as needed)
sudo fallocate -l 64G /swapfile
# Set correct permissions
sudo chmod 600 /swapfile
# Set up the file as a Linux swap area
sudo mkswap /swapfile
# Enable the swap file
sudo swapon /swapfile
# Verify the swap memory is active
free -h恭喜!🎉 你已成功设置了 AWS Deep Learning 实例,安装了 Ultralytics YOLOv5,并准备好执行 目标检测 任务了。无论你是尝试预训练模型还是在自己的数据上进行 训练,这个强大的设置都为你 计算机视觉 项目提供了可扩展的基础。如果遇到任何问题,请查阅广泛的 AWS 文档 和有用的 Ultralytics 社区资源,例如 常见问题解答 (FAQ)。祝检测愉快!