供应商和零售商之间定价关系的因果关系分析M
Causal Analysis of Pricing Relationship between Suppliers and Retailers
摘要: 本文考虑使用两种机器学习算法来识别零售价格、供应商价格和销售量之间的因果关系,目的是找到零售和供应商之间动态博弈下的定价权。本文使用最早期的PC算法和LiNGAM (线性非高斯无环模型)。所研究的数据集为某地区大型零售超市的食品产品的数据。PC算法不能在三个节点,即零售价格、供应商价格和销售数量之间找到因果方向,而基于非高斯分布误差数据下的LiNGAM算法能够找到三节点下的因果方向。
Abstract: In this paper, two machine learning algorithms are used to identify the causal relationship among retail price, supplier price and sales volume in order to find the pricing power under the dynamic game between retail and supplier. This paper uses the earliest PC algorithm and lingam (linear non-Gaussian acyclic model). The data set studied is the data of food products of a large retail supermarket in a certain area. PC algorithm cannot find the causal direction among three nodes, namely retail price, supplier price and sales quantity, while lingam algorithm based on non Gaussian error data can find the causal direction under three nodes.
文章引用:马泽龙. 供应商和零售商之间定价关系的因果关系分析M[J]. 计算机科学与应用, 2021, 11(4): 1053-1060. https://doi.org/10.12677/CSA.2021.114108

1. 前言

本文研究了以薯片为代表的零售食品行业的制造商和零售商之间的定价权。本文使用两种经典的算法:PC算法和LiNGAM(线性非高斯无环模型算法)。本文将两者都应用于推断某地区大型零售超市中收集的薯片零售价格、供应商价格和销售数量之间的因果关系。

本文所使用的两种机器学习算法,它们试图从观测数据中揭示变量之间的因果关系,而不是做结构的先验假设。两种算法在无环图结构上做搜索,得到的输出结果为有向无环图(DAG)。DAG被广泛用于表示非时间变量之间的因果关系 [1]。PC算法是对该领域的早期算法,它对数据进行了高斯假设,使用条件独立性关系来发现因果关系。高斯数据的假设否定了对高阶矩结构信息的需要 [2]。然而,PC算法往往导致一组不可区分的因果模式(马尔科夫等价类)。例如,当x、y和z正态分布时,数据无法区分两个图:x ← y → z和x → y → z。这两个图都兼容相同的概率分布,因此是不可区分的和观测等效的。

LiNGAM的一个关键特征是假设变量(或扰动)的非高斯性。如果数据是非高斯的,本文可以应用高阶矩来识别因果模式。数据离正态性越远,LiNGAM确定的最终因果模式就越准确。本文阐明了PC和LiNGAM算法的异同。通过假设检验的方法,本文的数据拒绝正态原假设,因此可以使用LiNGAM识别变量中的因果结构。

2. PC算法

2.1. 条件独立性与因果图

PC算法是最早和广泛使用的机器学习算法之一。为了便于解释,先描述依赖模型的概念。设X、Y、Z表示三个互不相交的变量的子集。“X在给定Z的情况下独立于Y”可以用独立性声明 I ( X , Y | Z ) 来表示。假设M是一个依赖模型,用来规定 I ( X , Y | Z ) 是否为真。如果无向图 G = ( V , E ) 中的M变量与V中的顶点集有直接对应关系,则G的拓扑结构反映了M模型中的一些性质。图G中Z的子集节点截断了所有的X节点到Y节点之间的路径,可以写作 X | Z | Y G 。当X和Y的子节点集合通过集合Z连接时,控制Z可以理解为阻断以上路径 [3],并且引出了以下定义。

在满足元素的所有子集X、Y和Z不相交的情况下,如果M的变量和G的节点V之间存在一对一的对应关系,无向图G是依赖模型M的依赖性映射(或D-映射)。

I ( X , Y | Z ) M X | Z | Y G

类似地,G是M的一个独立映射(或I-映射)如果:

I ( X , Y | Z ) M X | Z | Y G

如果G同时是D——映射和I——映射,则称G是M的完美映射(P-map),即:

I ( X , Y | Z ) M X | Z | Y G

给定一个满足因果马尔可夫条件和稳定性条件的概率分布P,对于连续正态分布和离散多项式分布,DAG (或贝叶斯网络)是P的一个完美映射。

2.2. 因果马尔科夫条件

PC算法中常用的分布假设是连续变量的高斯分布。从更广义的意义上说,一个参数化的数据集是一对 G , Θ G ,其中G是一个数据集, Θ G 是一个自由参数集,它把图G映射到一个概率分布上。为了给参数指定一个概率分布,必须对参数施加一些限制,例如标准差不能为负。DAG G所代表任意的联合概率分布,且可按照如下因子分解定理分解:

p ( X 1 = x 1 , , X n = x n ) = i = 1 n p ( X i = x i | P a i G = p a i G , Θ G ) (1)

P a i G 是G中 X i 节点的父节点集合。根据G因子分解,其等价于DAG中的每个变量X独立于所有的(既不是X的父变量也不是X的后代节点)的变量,而依赖于G中X的所有父变量。满足式(1)中的性质的概率分布,称为G的因果马尔可夫条件 [4]。Pearl提出了d分离的概念来确定满足因果马尔可夫条件所包含的条件独立关系。

2.3. d分离

阻断:连个节点集合X,Y被Z阻断包含如下几个情况:

在链结构和叉结构中→ Z →,← Z →,其中Z是被控制的变量节点;

在对撞结构中→ Z ←,Z不被控制,并且Z的后代节点也不被控制。

d分离:两个节点集合X,Y被集合Z所d分离当且仅当XY节点之间全部路径被Z节点所阻断。

PC发现算法伪代码如下所示。

3. 线性非高斯无环模型(LINGAM)

PC算法通常是基于条件独立性来搜索因果模式,而LiNGAM算法则是基于函数组成发现因果方向。LiNGAM的识别依赖于独立成分分析(ICA)。对于高斯变量,ICA不能找到正确的混合矩阵,因为许多不同的混合矩阵产生完全相同的高斯联合密度。ICA仅适用于非高斯数据。如果数据是非高斯的,本文可以利用变量的高阶统计量来获得更强的识别结果。

3.1. 基于独立成分分析(ICA)的LINGAM

中心极限定理(CLT)指出,任何独立源信号的混合通常具有比任何构成的原始变量更接近正态分布的分布 [5]。假设本文观察混合变量的独立信号 S = ( S 1 , , S n ) ,本文有

X = A s (2)

其中s是相互独立的分量。根据CLT,任意一个s都比混合变量x更加的非高斯,本文可以把独立分量写成混合变量的逆矩阵形式。ICA的目标是找到“分离矩阵”W,其中W使统计独立分量的非高斯性之和最大化。

S ˜ = W ˜ X and W ˜ = A 1 (3)

3.2. 线性非高斯无环模型(LiNGAM)

Shimizu,Hoyer等人开发了LiNGAM,基于独立分布非高斯扰动的假设,实现了对非高斯分布变量 X = ( X 1 , X 2 , , X n ) 的搜索策略。假设向量之间存在因果关系,可以用如下结构方程模型表示:

x i = k ( j ) < k ( i ) b i j x j + e i (4)

其中k(i)表示xi的因果顺序,并且 X i X j 的直接原因。扰动项e是相互独立的非高斯分布,且方差非零。如果每个变量都有一个零均值,本文就得到以下方程组:

e = ( I B ) X = B ˜ X (5)

B ˜ = I ˜ W ˜ (6)

( I B ) X = e X = ( I B ) 1 e = A e (7)

PC发现算法伪代码如下所示。

4. 结构向量自回归模型(SVAR)

上述讨论没有提到变量之间的时间顺序及其可能的复杂性。一般来说,这类问题是通过使用向量自回归来解决的。由于Sims (1980)提出的向量自回归模型(VAR模型)不能提供足够的信息来研究同一时期经济变量之间的因果影响。所以本文使用改良的结构向量自回归模型(SVAR)。

假设t时刻有n个相关变量,定义SVAR模型为

X t = B 0 X t + B 1 X t 1 + + B p X t p + e t (8)

其中p为使用滞后时间的个数,B0为瞬时效应,反映变量在同一时间的因果顺序。由SVAR模型导出简化后的VAR模型为:

X t = i = 1 p ( I B 0 ) 1 B i X t i + ( I B 0 ) 1 e t = i = 1 p M i X t i + ( I B 0 ) 1 e t (9)

u ^ t = ( I B 0 ) 1 e t (10)

( I B 0 ) u ^ t = e t u ^ t = B 0 u ^ t + e t (11)

本文使用图模型在SVAR识别中的寻找 B 0 (10)中的矩阵。在使用PC算法时,本文从测试 u ^ 之间的条件独立性关系开始。如果误差项是非正态分布的,则用LiNGAM算法求出矩阵。

5. 数据与试验结果

5.1. 数据描述

本文使用中国某大型零售超市的商品扫描数据Data.A,该超市是该地区最大的连锁超市之一。数据来自调研的五年期间的88个商店。Data.A将产品按16个区域分为4个价格等级进行定价:促销价格、便宜、中等、高价位。Data.A数据库是一个不平衡的面板数据,有些商店的数据存在大量缺失值。其中1号、15号店、21号店。有本文所调查产品上好佳薯片和乐事薯片的完整销售数据,因此使用这两个店的数据作为实证数据。

本文将本文的案例视为两个制造商(上好佳食品、乐事公司)与一个零售商的交互,因为这些商店属于同一零售链,通过对比两种商品能够更好的说明定价权的问题。本文假定两家制造商为每家商店预先设定了批发价。为了找到定价关系,本文使用其中最核心的三个边变量:零售价格(Pr)、制造商价格(Pm)和销量量(Q)。

5.2. 实证结果

LiNGAM算法的剪枝策略采用bootstrapping的一个简化版本。首先,将数据分成m个大小相等的组,然后在每组上运行LiNGAM算法,为每组生成一个B估计矩阵,然后求的平均值,并计算其标准差。

本文首先估计了一个简化的VAR模型(8),然后分析了方程上的估计残差。本文使用Schwarz信息准则(SIC)来选择最优时滞。本文直接使用1号15号21号店的原始数据,而不是使用残差数据,因为这些数据没有滞后效应。在实证检验上,几乎所有的变量序列都使用增强Dickey-Fuller检验拒绝平稳性的原假设。本文在0.05显著性水平下验证了两个店(销售数据)在平稳漂移的情况下,拒绝了增强Dickey-Fuller检验。相关的假设检验见表1

Table 1. Enhanced Dickey fuller test and P value of original data structure residuals

表1. 原始数据结构残差的增强Dickey-Fuller检验及P值

此外,本文在0.05显著性水平下使用Jarque-Bera检验非高斯性的结构残差,见表2。Jarque-Bera测试结果发现商店1的Oishi的Pr数据的结构残差不拒绝零假设的正态分布。“在只有一个高斯分量的情况下,本文可以估计模型,因为单个高斯分量没有任何其他可以与之混合的高斯分量”。本文可以可靠地发现唯一正确的LiNGAM结果,当且仅当最多有一个误差项是高斯的。因此,本文认为对1号店的该数据应用LiNGAM算法是合适的。

Table 2. Enhanced Dickey fuller test and P-value of original data structure residuals

表2. 原始数据结构残差的增强Dickey-Fuller检验及P值

图1显示了原始数据经验分布的直方图,从上到下依次对应Pm、Pr、Q。在各个商店的数据中,可以看到在各个变量间,至多只有一个类高斯分布。

Figure 1. Distribution of structural residuals

图1. 结构残差的直方图

图2可以看出,PC算法在0.1的显著性水平下返回无向边,说明该算法没办法有效发现三个节点之间的因果关系。另一方面,VAR-LiNGAM的结果很好地表明了定价模式,即 p r p m 。换句话说,该零售商店有能力影响这两个著名的薯片制造商的价格这意味着零售商有更大的定价权。

Figure 2. Causality diagram of VAR-PC and VAR lingam of Oishi data

图2. Oishi数据的VAR-PC和VAR-LiNGAM的因果图

6. 结论

本文探讨了两种机器学习算法,PC算法和LiNGAM算法,试图揭示变量之间的因果关系,包括零售价格,制造商价格,和销售数量,以确定更大的定价权的一方。本文的VAR-LiNGAM图表清楚地表明,零售价格影响了两家主要的薯片制造商的出厂价格,并且具有非常明显的结构因果效应。通过额外的市场研究结果表明,零售商超的巨大定价权可能来自其在超市行业的市场份额,其自有品牌产品的销售,或来自两个薯片制造商之间的激烈竞争。然而,由于缺乏数据来估计制造商间的竞争,本文无法验证后一种猜想。而且该商超数据库缺乏关于制造商利润的信息,如果通过利润分析可能会从额外的角度去验证二者之间的定价关系。验证发现零售商相对于酸奶制造商具有更高的议价能力,这一发现与本文的VAR-LiNGAM结果一致。但是值得注意的是,对于通用的因果问题发现仍然是误差项是否足够非正态,以保证LiNGAM能够生效,即数据的质量足以诱导正确的估计。

参考文献

[1] Pearl, J. (2009) Causality: Models, Reasoning, and Inference. 2nd edition, Cambridge University Press, Los Angeles.
https://doi.org/10.1017/CBO9780511803161
[2] Shimizu, S., Hyvärinen, A., Kano, Y. and Hoyer, P.O. (2005) Discovery of Non-Gaussian Linear Causal Models Using ICA. Proceedings of the Eleventh Conference on Uncertainty in Artificial Intelligence (UAI-2005), Quebec. non-Gaussianity.
[3] Hyvärinen, A., Zhang, K., Shimizu, S. and Hoyer, P.O. (2010). Estimation of a Structural Vector Autoregression Model Using Non-Gaussianity. Journal of Machine Learning Research, 11, 1709-1731.
[4] Spirtes, P. (2010) Introduction to Causal Inference. The Journal of Machine Learning Research, 99, 1643-1662.
[5] Stone, J.V. (2004) Independent Component Analysis: A Tutorial Introduction. Cambridge, MA: MIT Press.
https://doi.org/10.7551/mitpress/3717.001.0001