**
零基础理解推荐系统中的张量和张量分解
**
本人最近要做一个推荐系统的算法研究,里面用到了张量和张量分解来补充一些稀疏的评分值。
所以我在网上找了很多介绍张量的文章,看完感觉一头雾水,光是秩、阶、维这三个东西我都完全分不清楚,每个文章都写的有所不同。
我翻阅了各种资料,最后有了一点自己的理解。现在把我理解的张量和张量分解写出来,有错误希望各位指正。(我下面所说的张量都是数组形式,用于推荐系统中表示用户的评分信息,不适用于物理张量等其他内容,简单来说张量就是一个具有某种排列形式的数据的集合)
首先讲一下阶、秩、维的概念和区别:
矩阵的阶:一个m行n列的矩阵简称为m×n矩阵,特别把一个n×n的矩阵成为n阶正方阵,或者n阶矩阵。就是说矩阵的阶就代表矩阵(必须是方阵)的大小,例如7阶矩阵就是7×7的方阵。
矩阵的秩:通过初等变换可以把矩阵里面的一些行变成全0,就是说矩阵里的一些行可以用其他的行来代替(例如1 1 2可以表示3 3 6),如果一个n阶的方阵只用n-1行就能表示,那么矩阵的秩就是n-1。矩阵的秩是相对于n×n方阵来说的,如果矩阵是m×n的,那么就分为行秩和列秩,行秩和列秩中的min值就是矩阵的秩。
!!!而张量的阶和秩和矩阵的阶和秩没有任何关系,除了名字都叫阶和秩以外没有任何关系。
所以当看到张量的阶和秩的时候不要去联想矩阵的阶和秩。
张量的阶:照我的理解张量的阶就是索引的个数。
标量是第0阶张量,表示出来就是一个值 1
向量是第1阶张量,表示出来就是一维数组[1, 2,