RewriteCF.py 文件源码

python
阅读 31 收藏 0 点赞 0 评论 0

项目:Collaborative-Filtering-recommendation 作者: LunaBlack 项目源码 文件源码
def newItemSim(dataSet):
    n = np.shape(dataSet)[1]  #?itemNum
    itemSimArr = np.zeros(shape=(n,n))  #???????????????,???
    itemCommon = np.zeros(shape=(n,n))  #????????
    newItemSim = np.zeros(shape=(n,n))  #????????,????
    for i in range(n):
        for j in range(i+1, n):
            sim = 0
            overLap = np.nonzero(np.logical_and(dataSet[:,i]>0, dataSet[:,j]>0))[0]
            if len(overLap) > 0:
                sim = pearsSim(dataSet[overLap,i], dataSet[overLap,j])
            itemSimArr[i][j] = sim
            itemSimArr[j][i] = sim
            itemCommon[i][j] = len(overLap)
            itemCommon[j][i] = len(overLap)

    coef = np.exp((itemCommon*1.0/itemCommon.max(axis=0))-1)
    newItemSim = coef * itemSimArr  #????,????????????????
    newItemSim = np.nan_to_num(newItemSim)
    return newItemSim


#??????????????????
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号