机器学习产品开发全解析
一、机器学习应用的广泛与挑战
机器学习(ML)的一个重要且实用的特性是它可应用于多种不同类型的产品。它能用于分析应用,挖掘商业趋势和指标情报;也能嵌入设备中交付给消费者,比如自动驾驶汽车就内置了复杂的 ML 系统,用于检测其他物体并做出驾驶决策。ML 应用范围广泛且不断扩大,这使得致力于将 ML 集成到现有或新产品中的组织面临着陡峭的学习曲线和诸多实施选择。
本文聚焦于一个具体用例:yarnit.ai,一家电商网站,希望将 ML 集成到其基于网络的客户购物体验中。这个用例有诸多优点,它涵盖了后端(分析浏览和购买日志以预测产品兴趣)和前端(查找客户当前可能感兴趣的产品)的应用,复杂度适中,便于大多数读者理解,同时也呈现出与其他 ML 集成场景不同的挑战。
二、敏捷 ML 的困境与出路
在一些特定环境之外,许多当代软件工程团队依据敏捷宣言,采用迭代、专注且短周期的“冲刺”方式进行开发。然而,将敏捷方法应用于 ML 系统并非易事。传统软件开发的优势在于工程团队对问题的建模与解决方案之间联系紧密,而 ML 系统是归纳式的,它基于输入输出的先验示例(训练数据)学习合适的程序(模型),再将所学应用于生产中的新数据进行推理。科学家需谨慎选择模型架构,但找到合适的架构可能耗时良久,即便经验丰富的 ML 科学家也难以确定能否找到解决方案以及所需时间。
传统软件开发与 ML 系统构建的关键区别在于对不确定性的处理。不过,ML 只是一个特定领域的工程领域,部分方面风险较高,部分方面可适应标准工程实践。采用标准的 ML 开发生命周期,能让组织更轻松地利用 ML 系统提升客户体验并增加收入。
超级会员免费看
订阅专栏 解锁全文
9万+

被折叠的 条评论
为什么被折叠?



