根据Gartner最近的一项调查,许多公司才刚刚开始他们的机器学习之旅,并且37%的组织已经实施了人工智能 。 如果您打开了机器学习的大门,则可能需要在开始机器学习概念证明或AI,机器学习和深度学习的完整指南 之前先复习10个问题 。
机器学习在不断发展,新的商业突破、科学进步、框架改进和最佳实践经常被报道。
我们从拥有大规模机器学习程序并将组织视为业务核心的组织中学习很多东西。 在上个月于纽约举行的O'Reilly人工智能会议上 ,我看到了Facebook和Twitter的机器学习程序之间的一些共同趋势。
在Facebook,机器学习被广泛应用于许多领域。 在Facebook主页上,它可以搜索,翻译语言,扫描新闻提要,识别上传的照片中的面孔并查看展示了哪些广告。 在幕后,机器学习用于内容理解,语音识别,内容完整性,情感分析,不良内容检测和欺诈性帐户检测。
同样,您可以在Twitter的推文排名,广告选择,搜索功能和用户推荐中看到Twitter的机器学习。 机器学习还用于标记不安全的推文,垃圾邮件和图像。
可能不那么明显的是每个机器学习操作的规模以及两家公司如何投资于差异化功能。
Facebook每天为26亿用户执行200万亿次以上的预测 。 它的许多用户都是全球性的,并且存在带宽限制,并且许多交互是通过移动电话完成的。
由于61%的全球移动用户拥有6岁或更老的手机,因此这带来了一些挑战。 不到10%的用户使用最先进的智能手机。 Facebook策略的一部分是将更多的神经网络计算转移到边缘设备,以扩大规模,降低延迟并提供更多个性化的机器学习模型。 Facebook的机器学习技术堆栈体现了其目标,即易于研究新模型,同时进行大规模推理,并将一些计算工作转移到边缘设备。
Twitter在规模和延迟要求方面优化了其模型。 它每秒执行数千万个预测,每天训练数以兆兆字节为单位的某些模型。 该公司专注于优化延迟,模型响应所需的时间,并定义了数十毫秒的预测延迟预算。
Facebook和Twitter都早日开始了他们的机器学习程序。 他们从非结构化方法开始,但现在正在采取步骤标准化其平台,框架和管道。 Twitter旨在简化共享模型的工作,并希望减少重复工作。 Facebook正在解决可靠性,可伸缩性,运行模型的效率以及其科学家和工程师的开发人员经验方面的痛点。
两家公司的平台都围绕类似的数据管道处理原则进行了优化。 两者都有处理数据,提取特征,训练模型并将模型部署到生产环境的阶段。
两家社交媒体巨头正在采取步骤,以标准化选定的机器学习框架。 Facebook正在使用PyTorch轻松进行研究,而Caffe2则可以大规模运行生产推理模型。 它已将其整合到结合了这两种功能的PyTorch 1.0中,并使用Caffe2Go运行其移动神经网络。 Twitter混合使用了Lua Torch , TensorFlow , Scikit ,PyTorch和其他平台。 它现在在标准化烫 , PySpark ,Tensorflow和Apache的气流 。
Twitter和Facebook描述了在数据科学家,开发人员和工程师之间实现生产力,知识共享和代码可重用性的不同努力。
许多数据团队将数据目录和词典作为其数据治理计划的一部分。 使用这些工具进行数据分析或机器学习实验时,每个人都可以更轻松地理解基础数据模型,字段定义和质量约束。
Twitter通过标准化机器学习实验中使用的功能并将其捕获在功能存储目录中,进一步迈出了这一步。 这减少了重复,并帮助科学家以更少的精力将数据处理为特征来训练新模型。
Facebook还正在对其功能进行分类和标准化,自动化培训以及开发用于管理和部署模型的工具。 FBLearner是其支持这些功能的标准平台。
此外,Facebook正在标准化所使用的机器学习的类型。 例如,新闻提要,广告,搜索和异常检测的排名使用多层感知器。 它还利用卷积神经网络和支持向量机进行面部识别,并使用递归神经网络进行语言翻译。
就像软件应用程序一样,机器学习模型需要不断的培训和修改。 Facebook和Twitter都可以自动进行此训练,以便使用新数据重新调整模型。
Twitter认识到,将模型投入生产将对保持对模型进行最新数据训练并在数据科学家对模型进行改进时进行更新提出了新的要求。 Apache Airflow使培训和部署管道自动化。
Facebook专门针对其策略。 经常变化的模型(例如新闻提要)每小时或更短时间进行一次重新训练,而语言翻译和面部识别模型则每隔几周到几个月进行一次训练。
计算成本和计算资源的可用性也是重新训练模型的频率的因素。 Facebook已开发出针对不同类型的机器学习工作负载进行了优化的硬件堆栈,因此可能具有战略计算优势。 当全球范围内的计算资源未得到充分利用时,Twitter致力于优化算法性能并在非高峰时段安排培训。
与大多数组织相比,Twitter和Facebook在应用和扩展机器学习方面领先于成熟度曲线。 您可以从他们的成功中学到什么?
从少量工作开始,通过培训模型和在生产中运行来证明业务价值,然后加大规模和成熟实践的工作量。 成熟的实践需要与应用程序开发类似的学科,包括标准化框架,定义体系结构,选择维护周期,优化性能以及自动化部署管道。
您可以看到机器学习不仅具有重要的价值,而且还需要对性能和投资进行持续调查以做出改进。 对模型进行训练,部署,优化,然后将其替换为更好的模型。 机器学习是一种新的工具和技能,但是对于必须改善用户体验或利用其数据提升竞争价值的组织而言,机器学习将变得越来越重要。