项目介绍:Made-With-ML
Made-With-ML 是一个专注于整合机器学习与软件工程的项目,帮助开发者学习如何设计、开发、部署和迭代生产级机器学习应用。在这个项目中,已经有超过4万名开发者加入,通过该平台学习如何负责任地为机器学习带来价值。
目标与特色
Made-With-ML 项目的核心是从实验阶段(设计和开发)到生产阶段(部署和迭代)的全过程学习。这通过激励构建可靠生产系统的各个组件来实现。以下是该项目的一些关键特色:
- 第一性原理: 在编写代码之前,能够深刻理解每一个机器学习概念。
- 最佳实践: 在开发和部署机器学习模型时实施软件工程的最佳实践。
- 缩放能力: 轻松在 Python 中扩展 ML 工作负载(数据处理、训练、调优和服务),无需学习新语言。
- MLOps 集成: 构建端到端机器学习系统时,将 MLOps 组件如跟踪、测试、服务和编排等结合在一起。
- 从开发到生产: 学习如何快速可靠地从开发过渡到生产,而不需要对代码或基础设施进行更改。
- 持续集成/持续部署(CI/CD): 学习创建成熟的 CI/CD 工作流,以模块化方式持续训练和部署更好的模型,并能与任何技术栈集成。
适合对象
机器学习不仅限于某个单独的行业,而是一种强大的数据思维方式,适用于以下人群:
- 所有开发者: 无论是软件工程师、基础设施工程师还是数据科学家,机器学习在产品开发中占据越来越重要的地位。
- 大学毕业生: 在行业中获取所需的实际技能,并弥合大学课程与行业期望之间的差距。
- 产品经理/领导层: 想要建立技术基础,以便能够开发出由机器学习驱动的出色(且可靠的)产品。
安装与设置
用户可以根据自己的环境选择在本地电脑或 Anyscale 集群上运行本课程。课程内容涉及集群设置、Git 设置、环境变量配置以及虚拟环境的创建。这表达了课程的灵活性和适应性,无论是个人学习还是集成到更复杂的集群环境中。
笔记本和脚本
项目包含了 Jupyter 笔记本和 Python 脚本,帮助用户逐步探索核心机器学习工作负载和最佳的软件工程实践。脚本涵盖了从数据管理到模型评估的完整机器学习生命周期,并确保代码的可维护性和可扩展性。
生产环境部署
Made-With-ML 项目指导用户如何将应用程序部署到生产环境中,提供了通过 Anyscale 或其他云平台配置集群环境、计算资源及服务的详尽步骤。通过定义工作负载和服务,用户可以轻松将开发的 ML 模型服务化,即可用于生产部署。
CI/CD 工作流
项目展示了如何使用 GitHub Actions 自动化应用程序的部署,从而实现持续交付。用户可以通过持续学习不断改善模型,简化生产环境下模型迭代和演进的流程。
常见问题解答
对于一些常见的安装和配置问题,项目也提供了详细的指导以帮助用户顺利解决可能遇到的技术挑战。
Made-With-ML 项目为希望将机器学习模型应用于实战的开发人员提供了一个从基础到高阶的平台,通过这一系统化课程,用户将能够在广泛的场景中实现机器学习的价值。