建模是一个专业领域,需要高等数学、概率、线性代数和 ML 理论训练,这些都是大多数软件开发人员没有学过的东西。然而,这并不妨碍开发人员训练模型来执行特定功能,例如使用新的分类器来创建和训练模型,具体说就是用各种潜水员图像训练机器识别具有标记的潜水者图像。一旦训练好以后,模型和元数据被处理,就可供整个 Facebook 内部的开发人员使用。 Facebook 图像识别工作现在主要用于区分两大类型的图片。一是暴力、仇恨言论和色情图片。过去,用户将这些图片标记为令人反感的,并将该信息汇入专门的信息管理小组。确认为不良的图像被管理团队成员删除。后来,Facebook 开始建立 ML 模型来识别和删除这些图像。2015 年,ML 模型检查并消除的这些图像,比人类标记的更多。现在,信息管理小组开始独立创建新的分类器,识别新类型的令人反感的材料,并重新训练模型实现自动响应。 另一个是出现在用户新闻源中的记忆,那些通常出现在周年纪念日的蒙太奇。很大程度上,Facebook 的机器学习模型推断的友谊关系和图像往往是准确的。 用神经网络进行视频识别 虽然图像识别蓬勃发展,但视频内容识别和实现处于早期发展阶段。更高的理解视频的准确性在技术上是可能的,但是如果不改进基础设施架构性能,改进算法或两者同时改变,这是不可行的。 与大多数商业应用一样,ML模型的实现是成本效益、速度和高精度的折中。 尽管如此,FAIR 和应用计算机视觉团队还是实现了Facebook Live 视频的实时视频识别。 用户和明星将各自预计和临时想要发布的实时视频流从他们的智能手机摄像机使用 Facebook Live 广播到粉丝的新闻流。AI 推断可以对实况视频流进行排名,个性化用户的新闻流(newsfeed),消除视频发布和分发产生的延迟。实时视频个性化的服务非常有吸引力,这将再次增加用户在Facebook 应用中花费的时间。 用图像识别那么高的精度做视频识别,目前还做不到。整个 AI 研究圈还没有找到一组共同的特征描述符,也就是一个帧中的小区域,这个小区域能够用于精确检测对象,以便对大范围的视频类型进行分类。视频识别包括动作识别、显着性(人类观察者的注意力的焦点的识别)以及图说的等价物(称为视频摘要)。 让机器理解视频内容十分重要。为了加快这一领域的研究和开发,Facebook 与学界和开发者社区合作,开源其视频识别软件,发布一些研究成果并举办研讨会。 视频识别ML模型已经在 Facebook中 得到了其他的应用。 这些模型也被应用于优化视频压缩,提高重放质量,同时减少播放视频的带宽。 神经网络和基础设施:部署产业规模的低延迟 ML 模型 神经网络在研究和生产中的应用有很大不同,因此学术研究中的神经网络和在产业中应用的神经网络,面对的困难也有很大不同。在数以万计的机器上运行具有超低延迟的推理模型,准确地预测用户将点击哪些新闻故事与撰写研究论文,在书面上证明准确预测用户响应是可能的完全是两码事。 现有学术研究论文讨论的是使用具有标准化分布的大数据集训练神经网络,其方法和结果也在非常开放的氛围中由研究人员共享和协作。但是,Facebook的 Open Graph 的巨大规模对实际应用这些研究带来了问题。此外,要整个在现实中建造出类似大规模的基础设施,为 17 亿个人用户提供推理服务,也是一个非常艰巨的问题。正如 Facebook 核心机器学习工程总监 Hussein Mehanna 所说,“数据集变一下,你面对的几乎就是一个完全不同的程序了”。 2014 年,Mehanna 在 Facebook 的广告团队工作,使用 ML 预测用户会点击哪些广告。按照学术研究标准,这根本算不上是突破,但在 Facebook 的规模运行这种预测算法实际上是一项非凡的成就。 Facebook 以前的数据分布不适合于神经网络。因此,数据需要通过预处理来提高预测的准确性。但是,预测的准确性只是问题的一部分,在实际应用中,在让用户体验低延迟进行大规模数据预测才行,而这是 ML 理论和基础设施交叉的问题。通常,神经网络会简化为一层或两层,推理模型的软件堆栈用本地代码优化。Mehanna 十分看重推理结果与其对 Facebook 平台影响两者之间的权衡:“只要再增加这些机器数量的 5% 就可能需要英特尔花好几个月来完成。” (责任编辑:本港台直播) |