APP下载

关于机器学习的5个要点

2019-06-20IsaacSacolickCharles

计算机世界 2019年22期
关键词:推特脸书机器

Isaac Sacolick Charles

推特和脸书可以教会我们很多关于高效人工智能的知识。

据Gartner最近的一项调查,很多企业刚刚开始机器学习之旅,37%的企业已经实施了人工智能。如果你已经打开了机器学习的大门,在开始机器学习概念验证或者学习人工智能、机器学习和深度学习的完整指南之前,建议先想一想10个问题。

机器学习正在发展,频繁报道出现了新的商业突破、科学进步、框架改进和最佳实践。

对于那些拥有大规模机器学习项目并将人工智能视为业务核心的企业,有很多东西值得我们学习。前不久在纽约的O'Reilly人工智能会议上,我发现了脸书和推特机器学习项目之间的几个共同趋势。

了解业务需求和竞争因素

在脸书,机器学习被应用于很多领域。在脸书主页上,它搜索、翻译语言、扫描新闻提要、识别上传照片中的人脸,并查看显示了哪些广告。在后台,机器学习用于进行内容理解、语音识别、内容完整性、情绪分析、不良内容检测和欺诈账户检测。

同样,还可以在推特的推文排名、广告选择、搜索功能和用户推荐中看到推特的机器学习在发挥作用。机器学习还用于标记骂人的推文、垃圾邮件和不适合工作的图像。

你可能看不出来每种机器学习工作的规模,以及这两家公司在差异化上的投入情况。

脸书每天为其26亿用户进行超过200万亿次的预测。其很多用户都是全球性的,带宽有限,大量的交互都是通过移动电话完成的。

这带来了一些难题,因为61%的全球移动用户的手机都使用了6年甚至更长时间;只有不到10%的用户使用最先进的智能手机。脸书的一种策略是把更多的神经网络计算转移到边缘设备上,以提高规模、降低延迟,并提供更个性化的机器学习模型。脸书的机器学习技术栈反映了它的目标,即大规模地进行推理,并将一些计算卸载到边缘设备上,使得更容易研究新模型。

推特根据规模和延迟需求优化其模型。它每秒执行数千万次预测,每天以数十TB的数据训练一些模型。该公司专注于优化延迟,即模型响应所需的时间,并定义了数十毫秒的预测延迟预算。

标准化平台以扩大规模

脸书和推特都很早就开始了他们的机器学习项目。他们从非结构化方法开始,而现在正在采取措施使其平台、框架和流水线标准化。推特的目标是让分享模型变得更容易,并希望减少重复性的工作。脸书正在解决可靠性、可扩展性、运行模型的效率以及其科学家和工程师在开发体验等方面遇到的难题。

两家公司的平台都围绕类似的数据流水线处理原则进行了优化。他们都有处理数据、提取特性、训练模型和把模型部署到生产环境中的步骤。

这两家社交媒体巨头正在采取措施,对某些机器学习框架进行标准化处理。脸书使用PyTorch进行简单研究,而Caffe2则大规模运行生产推理模型。它将这些整合到了Pytorch 1.0中,Pytorch 1.0结合了这两种功能,并使用Caffe2Go运行其移动神经网络。推特混合使用了Lua Torch、TensorFlow、Scikit、PyTorch和其他平台。它现在正在标准化Scalding、PySpark、TensorFlow,以及Apache Airflow。

讓科学家、开发人员和工程师协同工作

推特和脸书描述了在数据科学家、开发人员和工程师之间提高工作效率,实现知识共享和代码重用的各种工作。

很多数据部门在其数据治理项目中建立了数据目录和字典。利用这些工具,每个人在使用数据进行分析或者机器学习实验时更容易理解基础数据模型、字段定义和质量约束。

推特把机器学习实验中使用的特征标准化,并将其输入到一个特征存储目录中,从而更进了一步。这减少了重复工作,帮助科学家训练新模型,更轻松地把数据处理成特征。

脸书也在对其特征进行编目和标准化,实现训练的自动化,开发管理和部署模型的工具。FBLearner是其支持这些功能的标准平台。

此外,脸书正在标准化所使用的机器学习类型。例如,新闻提要、广告、搜索和异常检测的排名使用多层感知器。它还利用卷积神经网络和支持向量机进行面部识别,并利用递归神经网络进行语言翻译。

自动化机器学习模型的连续训练

就像软件应用程序一样,机器学习模型需要不断地进行训练和修改。脸书和推特都将这种训练自动化,这样,模型就可以用新数据重新进行调整。

推特认识到,将模型投入到产品中会产生新的要求,即让模型接受最新数据的训练,并在数据科学家改进模型时对其进行更新。Apache Airflow自动化了训练和部署流水线。

脸书在其策略上非常明确。对于频繁变化的模型,例如新闻提要,可以每小时甚至在更短的时间内再训练一次,而语言翻译和面部识别模型的训练周期可以是几周到几个月。

计算成本和计算资源的可用性也是影响模型重新训练频率的因素。脸书可能有战略计算优势,因为它开发了针对不同类型机器学习工作负载进行过优化的硬件堆栈。推特的重点是优化算法性能,以及在全球计算资源利用较低的非高峰时间段安排训练。

长远规划

与大多数企业相比,推特和脸书在应用和扩展机器学习方面远远领先于成熟度曲线。我们能从他们的成功中学到什么?

从小处着手,通过训练模型和在产品中运行来验证业务价值,然后进一步投入,以扩大规模,让实践成熟起来。成熟的实践需要类似于应用程序开发的规程,包括标准化框架、定义体系结构、选择维护周期、优化性能,以及自动部署流水线。

你会看到,机器学习提供了巨大的价值,但也需要围绕性能和投入进行持续的调查,以做出改进。模型得到训练、部署、优化,然后被更好的模型所取代。机器学习是一种新的工具和技能集,对于必须改善用户体验或者利用数据提高竞争价值的企业来说,它将变得越来越重要。

Isaac Sacolick是公认的社交领域的最佳首席信息官,也是“社交、敏捷和转型”以及CIO.com的长期博主,还兼任StarCIO总裁。

猜你喜欢

推特脸书机器
机器狗
机器狗
神奇的机器翻译系统
神奇的机器翻译系统
漫画二则
未来机器城
警务广角
推特上的那些事儿