从FM的原始数学公式看
在进行二阶特征组合的时候,假设有n个不同的特征,那么二阶特征组合意味着任意两个特征都要进行交叉组合,时间复杂度直接为O(n*n),因此很自然需要降低时间复杂度,作者的方法是将系数矩阵分解(Cholesky分解)。那么为什么可以进行这样的一个分解?
在矩阵分析这门课中有这样一个定理
上面这个定理就是Cholesky分解。
那么现在的问题就是怎么证明公式中的二次交叉项系数矩阵是对称正定矩阵。显而易见的是系数矩阵W是对称的,只需要证明W是正定的即可。
可以把公式的二次交叉项部分写成二次型的矩阵形式即
f = xTWx
(T表示转置,不会用csdn的公式编辑器,手动狗头)
正定二次型的有这样的一个定义:
设有二次型f=xTWx(WT=W), 如果对于任何不为0的x都有f>0(显然x=0时f=0),则称f为正定二次型,并称对称矩阵W是正定的。
根据FM论文作者的描述,假设特征之间存在相关的联系,换而言之,二次交叉项对于目标来说是有正向增益的,因此可以认为xTWx>0,从而系数矩阵是对称正定矩阵。故根据定理可知系数矩阵能进行乔累斯基分解。
===============
更深入一步,为什么乔累斯基分解是成立的,要证明乔累斯基分解是成立的就需要用到另外一个定理
感兴趣的同学可以去看看矩阵分析这本书。