标题:资深工程师分享四年构建MLOps系统的经验与挑战
副标题:从能源预测到医疗保健,MLOps领域的实践与反思
日期:2024年9月12日
正文:
【InfoQ 报道】在机器学习和软件工程领域,MLOps(Machine Learning Operations)已经成为连接数据科学家与生产环境的关键桥梁。近日,一位有着四年MLOps系统构建经验的资深程序员Mehmet Burak Sayıcı,在InfoQ上分享了他的经历与见解。
Sayıcı的职业生涯始于能源消耗模型的研究,他首次接触MLOps是在预测八个城市次日电力消耗的项目中。随着用户数量的增加和经济波动的影响,他面临着模型和数据漂移的挑战。通过尝试多种模型,包括深度学习和基于树的模型,他发现LightGBM和XGBoost在预测准确性上表现最佳。
在构建MLOps系统的过程中,Sayıcı意识到了自动化的重要性,他建立了一个完整的系统,每天通过API提取数据、生成特征、挑选模型并进行预测。然而,他也强调了自动化脚本运行后,人工监控预测结果的必要性,尤其是在国定假日或意外事件期间。
Sayıcı分享了一个有趣的故事,他与经理关于预测结果的争论,揭示了模型预测与实际业务逻辑之间的差异。尽管模型可能提供了准确的预测,但实际业务环境中的不可预测因素往往会影响结果。
随后,Sayıcı转到了医疗保健领域,负责构建一个MLOps平台。这个转变让他意识到,除了模型构建之外,还需要深入理解面向对象编程、系统设计和传统软件工程的知识。在构建平台的过程中,他面临着如何平衡通用功能和特定客户需求的挑战。
在讨论云端部署与本地部署的选择时,Sayıcı提到了在银行业MLOps职位面试中的经历,强调了不同行业对MLOps的理解和需求差异。
最后,Sayıcı探讨了身份危机的问题,他在多个职位之间切换,从MLOps工程师到ML工程师,再到后端工程师,他发现自己需要具备多方面的技能。他提出了“10x工程师”的概念,即那些能够在多个领域都有深入理解并精通其中一些领域的工程师,但也指出了这种神话的现实挑战。
Sayıcı的经验分享为我们提供了一个窗口,让我们看到了MLOps领域的实际工作情况,以及工程师在这个快速发展的行业中所面临的挑战和机遇。
结语:MLOps作为一个新兴领域,正面临着快速的技术变革和行业需求的变化。Sayıcı的经验为我们提供了宝贵的第一手资料,帮助我们更好地理解这个领域的现状和未来趋势。
Views: 0