MLOps 关键概念
· 3 min read
关键术语
- MLOps 平台:专门的软件解决方案和工作流程,用于操作机器学习模型。MLOps 平台具有数据标记、模型监控、特征存储和优化模型服务等功能。
- 持续集成(CI):一种自动化软件开发实践,开发人员经常将代码变更合并到共享存储库中。然后自动构建和测试变更,以便及早发现问题。
- 持续交付:一种软件工程方法,团队在短周期内生产软件,确保软件可随时可靠发布。它依赖于自动化(如基础设施即代码)来复制测试/开发环境。
- 基础设施即代码:通过代码而不是人工流程来管理和配置基础设施。这样,环境配置、部署和管理就可以在各个开发阶段保持一致和可重复。
- 功能存储:集中式存储库,用于存储机器学习模型训练所需的特征。这有助于管理用于模型创建、存储和发现的数据,同时防止漂移。
MLOps 的关键组件有哪些?
- Elastic Storage Systems: scale up and down, object storage
- Elastic Compute System: infinite disk IO, storage, cpu, GPU, TPU
- Severless and Containerized Managed Services
MLOps 成熟度模型
AWS
Microsoft
- No MLOps
- DevOps but no MLOps
- Automated Training
- Automated Model Deployment
- Full MLOps Automated Operations
- Manual process
- ML pipeline automation
- CI/CD pipeline automation
什么是持续集成 CI/CD?
自动测试代码,确定你的代码是没问题 CI(Continue Integration),并能够复制到其他环境 CD(Continue Delivery)。
- Cloud Environment: Github CodeSpace, AWS Cloud 9
- python
- python virtialenv
- pylint
- pytest
- pytest_cov
- Back format
- GitHub Action
什么是数据湖、数据仓库 和 特征数据库?
什么是数据漂移 data drift ?
数据漂移的意思是,你可以思考一个理论的数据分布,在这个分布里面数据是静态的,比如一个既没有进水口也没有出水口的水池;但是由于世界的不确定性,数据的分布其实是动态的随时间的变化,其他因素变化会导致数据的本化,就像一个既有出水口也有入水口的水池,根据出入水排量可以知道水池里的“数据”总量变化,进水口的数据特征会导致水池中的“数据”分布于特性变化。
数据漂移描述的就是在静态数据集转变成动态数据集之间的差异,而数据漂移会直接影响模型的效果,这就是为什么要不停的迭代模型的原因。