Bol.com

MarktMentor如何为bol产品调研估算销量?

作者头像Lars Hurkmans联合创始人2023年7月12日阅读时间 9 分钟
winkelwagen-methode-naar-algoritme

MarktMentor使用自有算法估算bol上的销量,而不是购物车法。该模型结合了Retailer、Open和Advertising API等数据源,并运用机器学习和回归模型。对于80%的产品,估算值与实际销量的误差在25%以内。

MarktMentor为什么不再使用bol上的购物车法?

MarktMentor不再使用购物车法,是因为这种方法在准确性上存在结构性局限,无法扩展到追踪数百万件产品,而且高频使用还会与bol的政策相冲突。我们现在使用的是自主研发的算法估算系统。

MarktMentor最初和许多其他追踪工具一样,通过大家熟知的购物车法来估算销量。这种方法是在某个时刻查看某产品的库存量,之后再次测量库存。通过比较两次测量之间的差值,可以估算出两个时间点之间该产品的售出数量。

不过,购物车法存在一些局限,使其难以始终得出准确的估算:

  • bol以外的销售:许多卖家使用统一的库存系统来管理自己的所有销售渠道。这意味着你在bol上看到的库存量,其实是该产品的总库存量。如果卖家还在bol以外销售这款产品,就无法判断某次销售究竟发生在bol还是其他渠道。
  • 超过500件的库存:这是使用购物车法追踪bol的工具普遍存在的问题。在bol上,超过500件的库存是不可见的。这意味着当某产品库存超过500件时,就无法测量后续发生了什么。此外,有些产品类别(比如游戏)一次只能往购物车里放有限数量的商品,这使得基于库存信息来还原这类产品的销量变得非常困难。
  • 退货:当产品被退回,并且被判定为足够好可以再次出售时,会重新计入库存。这意味着同一件产品可能会被多次计入销售。这会导致对产品总销售次数的高估,尤其是对退货率较高的产品品类。
  • 卖家自身的调整:仅凭购物车中的变化,无法判断这是否是卖家自行调整库存所致。例如,卖家可能会自行下架产品、转移库存,或者主动增加库存。
  • 短时间内连续发生多次库存变动:有可能库存补货恰好与销售同时发生。在这种情况下,即使实际发生了销售,净库存量也可能保持不变。

虽然更频繁地测量可以在一定程度上缓解上述部分问题,但这又会带来可扩展性方面的其他挑战。我们在为什么购物车法在bol上不再奏效一文中进一步探讨了购物车法的技术局限。

为什么购物车法无法扩展?

购物车法之所以无法扩展,是因为要追踪数十万甚至数百万件产品,就需要每天多次测量库存,而bol对获取库存数据设有限制。

如果你想每天追踪数十万甚至数百万件产品,每天多次测量库存就会变得很有挑战性。这与数据规模、系统复杂度,尤其是bol对从其网站获取库存数据所设的限制有关。实际上,当我们试图大规模、高频地测量bol上产品的库存水平时,就会陷入一种猫捉老鼠式的博弈,这源于bol对网站抓取行为施加的限制。

抓取是一种由自动化程序"读取"网页并提取有价值信息(例如产品库存水平)的过程。为了保护自身网站免受过载或滥用,bol采取了措施来遏制过度或高强度的抓取行为。如果我们想每天追踪数百万件产品,就需要频繁抓取,这可能会引起bol的额外关注。这就形成了一场复杂的博弈,我们一方面要尽量不引起注意,另一方面又要持续收集所需信息。IP轮换或限速等技术可以在一定程度上缓解这个问题,但这些方案都远非完美。

因此,尽管从技术上讲,每天多次测量数百万件产品的库存是可行的,但bol的限制以及由此产生的猫鼠博弈,使这在实践中变得非常具有挑战性。这意味着我们可能需要降低库存测量的频率,以避免被bol屏蔽。这不可避免地会影响我们库存测量的可扩展性和频率。简而言之:当你想追踪数百万件产品的销量时,购物车法就会变得不切实际。基于这些以及其他原因,我们决定不再使用购物车法,转而采用自主研发的算法估算系统。

MarktMentor也非常重视与bol保持良好关系。bol在一定程度上容忍对其网站的抓取行为,但高强度使用购物车法,尤其是大规模使用,并不受欢迎。这可能会对其网站性能产生负面影响,并影响其他用户的体验。我们尊重这一立场,并在这方面遵循bol的政策和意愿。正是因为我们遵守这些规则,我们才得以成为bol的Gold Partner。

这些围绕可扩展性以及尊重bol意愿的挑战,加上购物车法本身的局限,促使我们决定转向算法方法来估算销量。这让我们能够以购物车法永远无法达到的规模进行估算。我们在MarktMentor与单品追踪工具的对比一文中,对比了这种规模与单品追踪工具的差异。

MarktMentor的算法是如何运作的?

MarktMentor的算法建立在来自多个数据源的大量数据之上,并通过机器学习和回归模型来估算产品的历史销量。

为了收集这些数据,我们需要多个数据源。我们使用的数据源包括bol的Retailer API、Open API和Advertising API。我们将这些来源的信息与网页抓取结合起来,以获取更多补充信息。

数据收集完成后,我们会对其进行细致处理。这首先意味着我们需要对数据进行"清洗",去除其中可能存在的错误或不一致之处。随后,我们会对数据进行准备,使其能够用于我们的算法。

下一步是使用机器学习和回归模型等先进技术对数据进行分析。为此,我们主要使用以下变量:

  1. 荷兰和比利时的历史热门排名
  2. 产品类别
  3. 荷兰和比利时的产品报价信息(价格、配送时间)
  4. 星期几

基于这些及其他数据源,我们会对历史销量进行估算。在这个过程中,我们使用属于"监督学习"范畴的机器学习技术:我们用真实销量数据训练模型,目标是得到一组参数,能够估算变量的变化会如何转化为销量估算值。总体而言,这意味着模型接触的数据越多,销量估算就会越准确。因此,我们也会用现有数据来检验模型的准确性。

为了评估并进而提升系统的准确性,我们既会关注整体产品群体,也会关注按条件划分的子群体(根据产品的平均历史销量来划分)。基于整体产品群体的准确性用来优化通用参数,而按条件划分的子群体的准确性则用来提升特定情境下的准确性。对于这些按条件划分的子群体,我们会考察产品的不同订单规模(基于实际实现的平均历史销量),并针对每个子群体优化相应参数。

MarktMentor的数据有多准确?

对于80%的产品,估算值与实际销量的误差在25%以内。没有任何估算模型是完美的,因此理解这个准确度具体意味着什么很重要。

尽管我们的系统相比购物车法有了显著提升,但它终究仍是一种估算。对于80%的产品,我们的最大误差为25%。也就是说,对于80%的产品,我们的销量估算值与实际销量之间的差距在25%以内。用一个例子来说明会更直观。

假设你经营一家电商店铺,销售服装、电子产品和图书等多种商品。为了有效管理库存,你需要经常估算每种产品未来的销量。

这些估算并非总是完美的。有时你估计能卖出100双鞋,但最终只卖出了80双。这时,你的估算值与实际销量之间就出现了差距,也就是所谓的误差。在这个例子中,误差是20双鞋,换算成百分比就是20%(因为估算的100双鞋中有20双没有卖出)。

你会对自己出售的每一款产品都这样做,最终得到一份包含所有产品误差的清单。当你按误差从小到大排序后会发现,80%的产品误差在25%以内。也就是说,对于这80%的产品,你的销量估算值与实际销量的差距在25%以内。

举个例子,如果你的网站上销售100款不同的产品,那么其中80款产品的估算值与实际销量的差距在25%以内。而剩下的20款产品,估算值与实际销量的差距超过了25%。这说明这套估算系统对大多数产品来说都相当准确。

该如何最好地解读MarktMentor的销量数据?

请将MarktMentor的销量数据作为某产品需求的参考指标,而不是精确的销售数字。请查看较长时间段内的数据,并对比多款类似产品,以获得更全面的判断。

我们在产品调研功能中展示的销量数据都是估算值。这些算法经过设计和优化,能够较好地反映产品的订单规模。因此,你可以用这些数据来大致判断bol上某产品的需求高低。

对于80%的产品,误差被控制在25%以内。也就是说,在大多数情况下,我们的估算值都比较接近实际销量。请注意:某个具体产品在某个特定时刻,实际偏差有可能超过25%。

为了获得最有价值的洞察,我们建议你从多个角度来研究这些数据:

  1. 查看一段时间内的销量走势:在产品概览中,你可以查看每周的销量估算。这能提供更细致的信息,帮助你更好地理解某产品的表现。
  2. 对比多款类似产品:借助Product Radar,你可以将多款产品纳入分析。通过研究更多同类产品,你能获得该产品类型销量表现的更全面判断。

请注意,我们每天都会更新销量数据。因此Product Database中的信息也在持续变化,Chrome扩展中的数据同样每天更新。所以不要只关注月度数据,因为它在短短几天内就可能发生明显变化。同时也要查看更长时间段的数据,比如过去三个月或过去一年。我们在bol上的历史数据与产品选择一文中,进一步阐述了如何在产品选择中权衡历史数据。

从购物车法转向算法的核心是什么?

MarktMentor已经从传统的购物车法转向了运用机器学习和回归模型等先进技术的算法方法。估算中仍然存在一定的误差,但新系统相比之前的方法有了显著提升。我们会持续改进方法,为bol上的产品调研提供有价值且准确的洞察。关于选择产品调研工具时应注意哪些方面,我们在为bol选择产品调研工具一文中做了总结。

准备好开始了吗?立即免费开始

常见问题

准备好迈出下一步了吗?在bol上继续成长