1.一种基于矩阵补全的抗托攻击推荐算法,其特征在于:包括如下步骤:
1)建立用户-项目评分矩阵R:
在推荐系统中,m名用户构成用户集合U={u1,u2,…um},n件项目构成项目集合I={i1,i2,…in},则用户-项目评分矩阵可表示为其中,用户u对项目i的评分记作ri,j,“*”表示已知评分,“?”表示未知评分;
2)建立基于矩阵补全的推荐模型:
基于矩阵补全的推荐模型建模为:
其中Ω集合表示评分矩阵中已收到评分的元素下标集合, X矩阵是低维未知矩阵, 为矩阵核范数,σi为矩阵X的第i大奇异值,是投影算子,表示当元素下标(i,j)∈Ω时,得到对应位置采样元素:
3)根据步骤2)建立基于属性优化矩阵补全的托攻击检测模型:基于属性优化矩阵补全的托攻击检测模型为:其中,Z表示结构化噪声矩阵,‖X‖*和‖Z‖2,1分别表示对X矩阵进行低秩性约束以及对Z矩阵进行行稀疏性约束, 是为了平滑评分细微波动的正则化项,λ,β为可调参数, 表示评分矩阵中已反馈的评分元素下标集合;
4)求解基于属性优化矩阵补全的托攻击检测模型,得到结构化行噪声矩阵Z;
5)根据步骤4)中计算得到的结构化噪声矩阵Z从用户-项目矩阵R中剔除托攻击评分;
6)采用传统推荐系统对修正后用户-项目评分矩阵进行评分预测,求得完整的用户-项目评分矩阵,基于完整的用户-项目评分矩阵中的预测评分对目标用户进行项目推荐。
2.根据权利要求1所述的一种基于矩阵补全的抗托攻击推荐算法,其特征在于:所述步骤4)采用分块坐标下降算法求解基于属性优化矩阵补全的托攻击检测模型,得到结构化行噪声矩阵Z,具体步骤如下:步骤4.1):在基于属性优化矩阵补全的托攻击检测模型中引入变量C并令C=ATXB,利用Frobenius范数将其进一步改写成相应的罚函数形式,公式转换为:步骤4.2):采用分块坐标下降算法求解步骤4.1)中的罚函数,令:初始化变量X、Z、C,令变量X0=0,Z0=0,C0=0,则可对各个变量做如下的迭代更新:X的迭代更新公式为:
其中,Y为引入变量,δX为引入参数,参数δX需满足类似于X的更新过程Z的迭代更新公式为:
其中,V为引入变量,λ、β为可调参数,参数δZ需满足C的迭代更新公式为:
Ck+1=[(ρ+β)ATXk+1B+βPΩ(R-Zk+1-ATXk+1B)]/(ρ+β)其中β为可调参数。
3.根据权利要求2所述的一种基于矩阵补全的抗托攻击推荐算法,其特征在于:所述参数
4.根据权利要求2所述的一种基于矩阵补全的抗托攻击推荐算法,其特征在于:所述参数
5.根据权利要求1所述的一种基于矩阵补全的抗托攻击推荐算法,其特征在于:所述步骤6)采用的推荐算法为不具备抗托攻击能力的传统推荐算法。