SVD
奇异值分解 (SVD) 通过提供另一种方法来标识彼此具有亲和关系的项,从而对关联分析进行了补充。事务项矩阵的奇异值分解将矩阵简化为可管理的若干维,从而支持您对相似事务和相似项分组。
事务项矩阵
事务项矩阵是这样一个矩阵:其中的每行对应一个事务,每列对应一项。矩阵条目由 0 和 1 构成。若某项出现在某个事务中,相应的行和列条目为 1。否则,行和列条目为 0。由于在事务项矩阵包含的值中,0 通常多于 1,所以称之为稀疏矩阵
奇异值分解
奇异值分解使用三个矩阵来近似事务项矩阵:USV‘。这三个矩阵的关系定义如下:
事务项矩阵 U * S * V‘
nTransactions 定义为事务项矩阵中的事务(行)数,nItems 定义为事务项矩阵中的项(列)数,nVec 定义为指定的奇异向量数。请注意,nVec 必须小于或等于 min(nTransactions, nItems)。它要求 UnTransactions * nVec 矩阵。S 是维 nVec 的对角矩阵。S 中的对角线元素是 SVD 中的奇异值。V‘nVec * nTransactions 矩阵。V‘ 中的行是奇异向量。
奇异向量使用相似功能或主题领域捕获不同项之间的关联。若三个项倾向于出现在相同的事务中,SVD 可能在 V‘ 中生成一个对这三个项值都很大的奇异向量。U 奇异向量表示投影到这个新项空间的事务。