基于蚁群聚类的个性化推荐模型研究
李海霞 (陕西能源职业技术学院经济管理系,陕西 咸阳〓712000)
随着现代电子商务的不断发展,现代商品信息呈数量级增长。对于消费者来讲,面对海量的数据信息,如何在短时间内找到自己需要的商品,降低购买成本,成为当前思考的重点问题。为解决该问题,很多学者进行了有益的尝试,并提出了基于内容的推荐、基于关联规则的推荐、基于协同过滤的推荐等算法,从而提高了电子商务商品的推荐效率和用户的忠诚度。在这些技术中,以协同过滤算法的研究最为广泛。如文献[1]~[6]结合数据属性和用户相似度等,对协同过滤算法进行改进,从而提高了商品推荐精度。但是长期以来在使用协同过滤算法的过程中,数据的稀疏性一直是影响协同过滤算法评分精度提高的重要因素[7]。对此,本文在前人研究的基础上引入蚁群算法,利用蚂蚁找食原理,从而找到邻近类簇,以此为后续的项目评分奠定基础,最后通过设计协同过滤算法,对用户进行筛选过滤。
1〓蚁群聚类算法原理 蚁群算法是根据现实蚂蚁觅食行为抽象出来的一种算法,具有鲁棒性、正反馈型、自组织和分布并发性的特点[8],被广泛应用在生活实践中。蚁群聚类的原理就是借助蚁群算法的优势,将待聚类的对象采用随机的原则分布在二维网格上,通过蚂蚁计算对象在该种群环境下的群体相似度,同时通过概率转换函数将相似度转换成拾起、移动或放下的概率,最终经过多次迭代,将相似的数据进行聚类。 假设在某二维网格上,存在若干个不同的蚂蚁在反复运动,并不断地执行拾起和放下的动作,同时在t时刻发现了某个数据对象Oi,那么可以得出该对象与周围对象的相似度f(Oi): f(Oi)=max{0,∑(Oi∈Neigh(s×s)(r))[1-(d(Oi,Oj)〖〗α(1+v-1vmax)]} (1) 式中:α为相异度参数;d(Oi,Oj)为Oi和Oj两个对象之间的空间距离,也被称作对象之间的相似程度,d(Oi,Oj)越小表示对象之间的相似程度越高,即f(Oi)越大,反之d(Oi,Oj)越大表明f(Oi)越小;v为蚂蚁移动速度;vmax为蚂蚁最大的移动速度;Neigh(s×s)(r)为区域r的领域面积为s×s。蚂蚁移动速度v均匀地分布在[1,vmax]的区间,蚂蚁移动速度不同,聚类规模也有所不同。 d(Oi,Oj)通常采用欧氏距离和余弦函数法计算,本文采用余弦函数法进行计算。具体表达式为: d(Oi,Oj)=1-sim(Oi,Oj) (2)〓 sim(Oi,Oj)=(∑(mk=1D)(Oi,k·Oj,k)〖KF(〗∑〖DD(〗m〖〗k=1〖DD)〗(Oi,k)2·∑〖DD(〗m〖〗k=1〖DD)〗(Oj,k)2(3)
作者简介:李海霞(1983—),女,山西孝义人,陕西能源职业技术学院讲师,硕士,主要从事电子商务专业教学和科研工作。
(文章来源《机械设计与制造工程》杂志如需详细资料请联系江苏机械门户网客服QQ:2980918915,电话025-83726289)
更多关注,请扫码
|