APP下载

基于Softmax回归模型的协同过滤算法研究与应用

2016-02-23佩,曹菡,师

计算机技术与发展 2016年12期
关键词:口味协同饮食

孟 佩,曹 菡,师 军

(陕西师范大学,陕西 西安 710119)

基于Softmax回归模型的协同过滤算法研究与应用

孟 佩,曹 菡,师 军

(陕西师范大学,陕西 西安 710119)

针对传统的协同过滤推荐算法所存在的推荐精度不高的问题,提出了基于Softmax回归模型的协同过滤算法。根据用户的属性特征将用户分为不同的簇,再从目标用户所在的簇中实现协同过滤推荐,有效缩减了最近邻居的查找范围,提高了推荐效率。主要将此改进算法应用于饮食推荐中,根据用户的饮食记录对用户按口味偏好进行精准分类,将偏好相同的用户划分到同一个簇中,再从目标用户所在的用户簇中查找最近邻居,完成推荐。从两方面对此方法进行了实证分析:基于Softmax的用户口味偏好分类的准确率分析和基于Softmax的协同过滤推荐精准度分析,验证了该方法的有效性和可行性。

Softmax回归;口味偏好;协同过滤;营养饮食

0 引 言

随着社会经济的发展和人民生活条件的改善,人们的饮食消费观念已经由温饱型转向营养型,因此出现了许多营养膳食系统及饮食推荐方面的研究。基于本体的个性化营养推荐系统[1-2],主要采用协同过滤技术和上下文相关技术进行饮食推荐,忽略了数据稀疏的问题;基于Web数据挖掘的健康餐饮分析推荐系统的设计[3],基于模糊决策的体质学饮食推荐建模及其系统实现[4],都过分注重营养却忽略了用户的饮食喜好,推荐的食物虽然健康,用户却不喜欢。

大多数用户在饮食上都有自己偏好的口味,而且短期之内不会改变,所以文中采用Softmax多分类回归算法,根据用户近期一周的饮食记录,预测用户的口味偏好,在此基础上,对目标用户所在的类采用协同过滤算法[5-9],完成top-N推荐。此方法能够缩小邻居查询范围,减少计算量,缩短计算时间并提高用户口味满意度,弥补已有的营养膳食系统的不足,很好地平衡用户的喜好和饮食营养之间的关系。

1 Softmax回归模型

Softmax回归模型[10-11]是解决多类回归问题的算法,是当前深度学习研究中广泛使用在深度网络有监督学习部分的分类器。设训练Softmax回归模型的样本来自k个类,共有m个,则由这些样本组成的训练集为{(x(1),y(1)),(x(2),y(2)),…,(x(m),y(m))}。其中x(i)∈Rn,标签y(i)∈{1,2,…,k}。给定测试输入x,用假设函数针对每一个类别j估算出概率值p(y=j|x),即估计x的每一种分类结果出现的概率,其中出现概率最大的类别即为输出值。因此,假设函数要输出一个k维向量(向量元素的和为1)用来表示这k个估计的概率值。假设函数hθ(xi)形式如下:

(1)

该模型的代价函数[12-13]为:

(2)

其中,1{·}为指示函数,如果花括号中的表达式为真,则指示函数取值为1,否则为0。

原始的代价函数没有权重衰减项,即加号后面的部分,加入权重衰减可以解决Softmax回归的参数冗余所带来的数值问题,能够保证得到唯一的解。解决J(θ)的最小化问题有两种常用方法:梯度下降法和最小二乘法。文中采用第一种方法进行优化。具体思想是先对θ取一个随机初始值(其目的是使对称失效),然后不断迭代改变θ的值使J(θ)减小,直到最终收敛取得一个θ值使得J(θ)最小,最终确定出假设函数hθ(x),以此对新输入的数据进行预测分类。

2 基于Softmax的口味偏好分类

(1)数据归一化处理。

①Min-max标准化,也称为离差标准化,是对原始数据的显性变换,使结果值映射到[0,1]之间,转换公式为:

X=(x-min)/(max-min)

(3)

其中,max为样本数据的最大值;min为样本数据的最小值。

②Z-score标准化,该方法对原始数据的均值(mean)和标准差(standarddeviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,转换公式为:

(4)

以用户在最近一周内所食用的各种菜品的次数作为实验数据进行实验,由于每个人的饮食喜好不同,喜欢吃菜的程度不同,则实验数据内容可能会存在很大差异,进而影响数据分析结果,因此该实验采用线性函数法对数据进行归一化处理,使其归一化到[0,1]范围内,增强可比性。

(2)Softmax回归模型的训练。

到了13世纪初,蒙古铁骑继续对西夏大举进攻,国都兴庆府被蒙古大军攻破之后,黑城尚未失守,其间西夏国一些重要历史文献被转移到黑城,并在此掩藏。1286年,元世祖忽必烈在此设立“亦集乃路总管府”,这里成为中原到漠北的交通枢纽。在西夏黑城的基础上,一个新的城市出现了— —亦集乃,并进行了大规模的扩建。黑城在原规模上扩大了三分之二,再一次呈现出繁荣。

该实验训练数据200条,测试数据150条,采用梯度下降法对代价函数进行迭代优化,当结果达到收敛或经过指定步长数之后模型训练完毕。

3 基于Softmax的协同过滤推荐

区别于传统的基于用户的协同过滤算法,基于Softmax的协同过滤推荐算法首先对用户进行分类,将具有相同特征的用户划分到同一类中,然后在目标用户所在的用户簇中进行邻居查找及top-N推荐,避免了在整个用户空间上进行算法的实现,减少了一定的计算量和时间,并提高了推荐结果的精准度。

具体方法:使用Softmax对用户进行分类,寻求目标用户所在的用户簇,对每一类具有相同口味偏好的用户建立用户-饮食频次矩阵[14]和食物-营养素矩阵,求取食物间的相似度,完成预测并进行最终推荐。其中,食物间的相似度由用户饮食相似度和食物营养素相似度共同决定,均采用Pearson相关系数进行计算,相关公式如下:

simfood(i,j)=a*simdiet(i,j)+(1-a)*simnutrients(i,j)

(5)

simdiet(i,j)=

(6)

simnutrients(i,j)=

(7)

4 实验及结果分析

在参考校园一卡通数据的基础上,以350条生成数据为例验证改进算法的可用性。其中200条为训练数据,共含有清淡味、甜味、麻辣味和酸辣味4类口味偏好的用户,分别用1、2、3、4表示。通过训练数据训练出模型参数θ,得到预测函数hθ(x),再通过150条测试数据进行验证,检测假设函数的正确性。该实验最终正确率为99.333%。用户饮食记录数据结构如表1所示。

表1 饮食记录数据结构表

在训练数据和测试数据中,各类口味偏好的用户数据分布情况如表2所示。

表2 实验样本分布表

Matlab下的实验结果如图1所示。

图1 Softmax实验结果图

(2)基于Softmax的协同过滤精准度验证。

该实验将分两组进行对比:一组实验是直接进行协同过滤推荐,另一组是基于Softmax的协同过滤,在上述分类的基础上对每类用户进行实验。采用平均绝对误差(MAE)对算法进行度量,主要是通过计算目标用户的预测评分与实际评分之间的偏差来度量预测的准确性,因而MAE的值越小,推荐的质量越高。

实验结果如图2~4所示。

图2 传统的协同过滤

图3 改进的协同过滤

图4 实验对比

从实验结果看,基于Softmax的协同过滤的推荐质量高于传统的协同过滤,所以该方法具有可行性。

5 结束语

文中主要提出了一种基于Softmax的协同过滤改进算法,通过用户的某种特征属性对用户进行分组,根据目标用户所在的用户群,采用协同过滤算法实现推荐。模拟饮食数据,采用Softmax多分类回归算法,对用户按口味进行分类,在此基础上采用协同过滤算法进行饮食推荐研究。实验结果证明了该方法的可行性,能够为用户提供满意度更高的服务。

[1] 刘 浩.基于本体的个性化营养推荐系统[D].天津:天津大学,2007.

[2] 唐建华,张秀南.营养食疗个性化推荐系统设计与开发[J].扬州大学烹饪学报,2014,31(2):23-26.

[3] 康钟荣.基于项目特征分类与填充的协同过滤算法研究[J].河南科技,2013(6):3-5.

[4] 侯翠琴,焦李成,张文革.一种压缩稀疏用户评分矩阵的协同过滤算法[J].西安电子科技大学学报,2009,36(4):614-618.

[5]ArY,BostanciE.Ageneticalgorithmsolutiontothecollaborativefilteringproblem[J].ExpertSystemswithApplications,2016,61:122-128.

[6] 李晓城,张增杰,夏勇明,等.基于web数据挖掘的健康餐饮分析推荐系统的设计[J].微型电脑应用,2011,27(1):44-46.

[7] 付德坤.基于模糊决策的中医饮食推荐建模及嵌入式系统实现[D].成都:电子科技大学,2013.

[8] 黄 洋.基于聚类和项目类别偏好的协同过滤推荐算法研究[D].杭州:浙江理工大学,2014.

[9]AbdelwahabA,SekiyaH,MatsubaI.Collaborativefilteringbasedonaniterativepredictionmethodtoalleviatethesparsityproblem[C]//Proceedingsofthe11thinternationalconferenceoninformationintegrationandweb-basedapplications&services.[s.l.]:ACM,2009.

[10]TinoP.BifurcationstructureofequilibriaofiteratedSoftmax[J].Chaos,Solitons&Fractals,2009,41(4):1804-1816.

[11] 付 鹏,姚建刚,龚 磊.利用红外特征和Softmax回归识别绝缘子污秽等级[J].计算机工程与应用,2015,51(13):181-185.

[12] 汪海波,陈雁翔,李艳秋.基于主成分分析和Softmax回归模型的人脸识别方法[J].合肥工业大学学报:自然科学版,2015,38(6):759-763.

[13] 王 晟.基于Softmax回归的电力仪表分类[J].研究与开发,2014(6):25-28.

[14]MajidA,ChenLing,ChenGencai.Acontext-awarepersonalizedtravelrecommendationsystembasedongeotaggedsocialmediadatamining[J].InternationalJournalofGeographicalInformationScience,2013,27(4):662-663.

Research and Application of Collaborative Filtering Algorithm Based on Softmax Regression Model

MENG Pei,CAO Han,SHI Jun

(Shaanxi Normal University,Xi’an 710119,China)

In view of the low accuracy for traditional collaborative filtering recommendation algorithm,the collaborative filtering algorithm based on Softmax regression model is proposed.According to the user’s attributes,the users can be divided into different clusters,and the collaborative filtering recommendation is realized in the cluster from its target users,reduction of the nearest neighbors search scope,improvement of the performance of the recommendation system.The improved algorithm is applied to dietary recommendations,depending on the user’s diet by recording the user taste preferences for accurate classification,the same user preferences will be divided into the same cluster,and then the nearest neighbor is searched from the user cluster where there is the target user to complete the recommendation.An empirical analysis about this method from two aspects is made,including the accuracy analysis of the user’s taste preference classification based on Softmax and precision analysis of collaborative filtering recommendation based on Softmax,and the effectiveness and feasibility is verified.

Softmax regression;taste preference;collaborative filtering;nutrition diet

2016-01-21

2016-05-06

时间:2016-11-21

国家自然科学基金资助项目(41271387)

孟 佩(1989-),女,硕士研究生,研究方向为云计算、数据挖掘;曹 菡,博士,教授,通讯作者,研究方向为大数据处理、空间数据挖掘以及智慧旅游。

http://www.cnki.net/kcms/detail/61.1450.TP.20161121.1641.024.html

TP301.6

A

1673-629X(2016)12-0153-03

10.3969/j.issn.1673-629X.2016.12.033

猜你喜欢

口味协同饮食
家校社协同育人 共赢美好未来
春节饮食有“三要”
蜀道难:车与路的协同进化
饮食如何搭配才健康
“四化”协同才有出路
何为清淡饮食
多种口味
三医联动 协同创新
健康饮食
口味换不停