UMBRELLA

未雨绸缪,举重若轻

线性回归

回归(regression)是能为一个或多个自变量与因变量之间关系建模的一类方法。在自然科学和社会科学领域,回归经常用来表示输入和输出之间的关系。在机器学习领域中的大多数任务通常都与预测(prediction)有关。当我们向预测一个数值时,就会涉及到回归问题。常见的例子包括:预测价格(房屋、股票等)、预测住院时间(针对住院病人等)、预测需求(零售销量等)。但不是所有的预测都是回归问题。分类问题的目标是预测数据属于一组类别中的哪一个。

阅读全文 »

数据操作

为了能够完成各种数据操作,我们需要某种方法来存储和操作数据。通常,我们需要做两件重要的事:1.获取数据;2.将数据读入计算机后对其进行处理。如果没有某种方法来存储数据,那么获取数据是没有意义的。首先,我们介绍n维数组,也称为张量(tensor)。使用过PythonNumPy计算包。无论使用哪个深度学习框架,它的张量类(在MXNet中为ndarray,在PyTorchTensorFlow中为Tensor)都与Numpyndarray类似。但深度学习框架又比Numpyndarray多一些重要功能:首先,GPU很好地支持加速计算,而NumPy仅支持CPU计算;其次,张量类支持自动微分。这些功能使得张量类更适合深度学习。

阅读全文 »

引言

为了解决各种各样的机器学习问题,深度学习提供了强大的工具。虽然许多深度学习方法都是最近才有重大突破,但使用数据和神经网络编程的核心思想已经研究了几个世纪。事实上,人类长期以来就有分析数据和预测未来结果的愿望,而自然科学大部分都植根于此。例如,伯努利分布是以雅各布•伯努利(1654-1705)命名的。而高斯分布是由卡尔•弗里德里希•高斯(1777-1855)发现的,他发明了最小均方算法,至今仍用于解决从保险计算到医疗诊断的许多问题。这些工具算法催生了自然科学中的一种实验方法—例如,电阻中电流和电压的欧姆定律可以用线性模型完美地描述。

阅读全文 »

什么是 ScanNN?

ScaNN是可扩展最近邻的缩写。在推荐系统的检索阶段,我们需要快速找到给定查询嵌入的最近数据集的嵌入。通常嵌入集对于穷举搜索来说往往太大。因此,需要像ScaNN这样的工具来进行近似邻域搜索。ScaNN2020.06开源。他提供高效的向量相似性搜索,即从海量数据库中快速地匹配和检索相似项。他包括基于树的空间分区、非对称哈希、内涵和倒排索引等实现。由于这些高度优化的算法,ScaNN在大型和中等规模数据库的最近邻搜索方面提供了显著的加速。

阅读全文 »

介绍

深度与交叉网络DCN)旨在有效地学习显式的、有边界的交叉特征,你已经知道大而稀疏的特征空间极难训练。通常我们执行特征工程,包括设计交叉特征,这是非常具有挑战性且效率低下的。虽然在这种情况下可以使用其它神经网络,但这并不是最有效的办法。深度与交叉网络是专门为应对这一挑战而设计的。在深入了解DCN之前,我们首先花一点时间回顾一下,什么是特征交叉?假设我们正在构建一个推荐系统来向客户销售搅拌机,那么我们客户过去的购买历史记录,例如购买的香蕉和购买的烹饪书籍或地理特征都是单一特征。如果一个人同时购买了香蕉和烹饪书籍,那么该客户将更有可能点击推荐的搅拌机。购买的香蕉和购买的烹饪书籍的组合被称为特征交叉,它提供了除单个特征之外附加交互信息。你可以添加更多交叉特征。在真实的推荐系统当中,我们通常拥有大而稀疏的特征空间,因此,在这种情况下识别有效的特征,通常需要执行特征工程或详尽的搜索,这是非常低效的。

阅读全文 »

上下文特征

为了提高模型的准确性,我们可以做的事情之一是利用上下文特征,有时称为“辅助特征”。我们之前的例子并未包含上下文特征,而完全依赖于用户和项目ID。在推荐模型中,除ID之外的特征是否有用:

  • 上下文的重要性:如果用户偏好在上下文和时间上相对平滑,则上下文特征可能不会提升模型的准确性。然而,如果用户偏好与上下文高度相关,则添加上下文将显着改进模型的准确性。例如,在决定是否推荐短片或电影时,星期几可能是一个重要特征:用户可能只有在一周内有时间观看短片内容,但可以在周末放松并欣赏完整的电影。类似地,查询时间戳可能在流行度动态建模中发挥重要作用:一部电影在发行时可能非常受欢迎,但之后很快就会衰退。相反,其他电影可能是常青树,让人重复地观看。
  • 数据稀疏性:如果数据稀疏,使用非ID特征可能很关键。由于给定用户或项目的可用观察很少,模型可能难以估计每位用户或每个项目表示。为了构建准确的模型,必须使用项目类别、描述和图像等其他特征来帮助模型泛化到训练数据之外。这在冷启动情况下尤其重要,在冷启动情况下,某些项目或用户的可用数据相对较少。
    阅读全文 »

推荐系统通常由两个阶段组成:

  • 检索阶段:负责从所有可能的候选者中选择数百个候选者的初始集合。检索模型的主要目标是有效地剔除用户不感兴趣的所有候选者。由于检索模型可能要处理数百万个候选者,因此它必须具有很高的计算效率。
  • 排名阶段:获取检索模型的输出,并对它们进行微调以选择尽可能好的推荐。它的任务是将用户感兴趣的项目集缩小到可能的候选者的候选名单。
    阅读全文 »

TensorFlow Recommenders(TFRS)是一个用于构建推荐(Recommender)系统模型的库,在推荐(Recommender)系统的整个构建流程 - 无论是数据准备、模型构建、训练、评估还是部署都可以起到很大的作用。TFRS融合了多任务学习、特征交互建模和TPU训练的研究成果。推荐系统通常有多个组件来进行检索、排名和后期排名。

推荐系统通常由两个阶段组成:

  • 检索阶段:负责从所有可能的候选者中选择数百个候选者的初始集合。检索模型的主要目标是有效地剔除用户不感兴趣的所有候选者。由于检索模型可能要处理数百万个候选者,因此它必须具有很高的计算效率。
  • 排名阶段:获取检索模型的输出,并对它们进行微调以选择尽可能好的推荐。它的任务是将用户感兴趣的项目集缩小到可能的候选者的候选名单。
    阅读全文 »

内容过滤

用于构建推荐系统。一种常见的方法是内容过滤。基于内容过滤是根据用户的先前操作或明确的反馈,使用推荐功能,推荐其它与用户喜欢的内容类似的商品。例如,这里我们展示了四个具有不同功能的应用。每一行代表一个应用,每一列代表一个特征。特征可能包括类别(例如教育、休闲、健康)等。为了简单起见,假设此特征矩阵是二进制的:非零值表示应用具有该特征。有些应用与教育或科学相关,有些则与健康或医疗保健相关。当用户安装了健康类应用时,我们可以向该用户推荐其它与健康相关的应用,因为它们与安装的健康应用类似。

阅读全文 »

KerasCV可以轻松组装最先进的工业级数据增强管道,用于图像分类和对象检测任务。KerasCV提供了广泛的预处理层,可实现常见的数据增强技术。最有用的三个层是keras_cv.layers.CutMix、keras_cv.layers.MixUpkeras_cv.layers.RandAugment。这些层几乎用于所有图像分类流程。

阅读全文 »
0%