基于内存计算框架、融合社交环境及时空数据的位置推荐方法与流程

文档序号:12465330阅读:来源:国知局

技术特征:

1.一种基于内存计算框架、融合社交环境及时空数据的位置推荐方法,其特征在于:包括以下步骤:

第一步,搭建形成包含master主机和slave从机的集群,将用户签到表数据导入master主机中,由master主机进行分割,并将数据的预处理任务分派给slave从机,同时追踪slave从机上的分布式计算,收集slave从机的反馈信息进行汇总统计,得到用户签到矩阵CIt

第二步,从社交网络中去获取用户的社交好友关系数据,并对用户签到矩阵CIt和用户的社交好友关系数据进行整理,得到用户之间的社交关系矩阵SN;

第三步,对社交环境进行分析,具体包括建立基于时间状态的社交圈、利用用户签到矩阵CIt和签到日志分析和量化个人偏好、个人偏好相似度、用户之间的社交信任以及社交亲近度;

第四步,对签到矩阵进行拆分并分解,得到用户隐特征矩阵Ut和位置隐特征矩阵L,并构建推荐模型目标函数得到用户隐特征矩阵Ut和位置隐特征矩阵L,将用户隐特征矩阵Ut和位置隐特征矩阵L进行合并预测用户在每个时间状态t下的签到偏好矩阵采用投票方案将不同时间状态下的预测矩阵合并为统一的位置偏好预测矩阵

第五步,将得到的位置偏好预测矩阵的数据提取,转换成可视化的形式,输出分析结果。

2.根据权利要求1所述的基于内存计算框架、融合社交环境及时空数据的位置推荐方法,其特征在于:所述第二步包括以下几个步骤:

B1、整理用户签到表数据,数据包含用户社交关系、用户的签到的时空数据、用户签到的主题数据,得到用户签到集合U={u1,u2,...,un}和位置集合L={l1,l2,...,lm},u表示用户,n代表用户的ID,l表示签到位置,m代表签到位置的ID,;

B2、对用户签到表数据统计,得出用户和位置之间关联关系,用Lu表示用户u历史签到过的位置集合,使用地理坐标<经度,纬度>对位置进行地理编码;

B3、对用户签到数据做预处理:统计用户在各位置的签到频率,记为用户-位置签到频率矩阵用户-位置签到频率矩阵中的元素cu,i代表用户u在位置i上的签到次数;

B4、统计用户社交关系表,得出用户之间是否存在好友关系,用户之间的社交关系用矩阵表示。

3.根据权利要求1所述的基于内存计算框架、融合社交环境及时空数据的位置推荐方法,其特征在于:所述第三步包括以下几个步骤:

C1、建立社交圈给定时间状态,同时满足下列两个条件的所有用户v构成用户u的社交圈

1)在原始社交网络中用户u和v之间存在直接社交关系,即SNu,v=1;

2)其中代表用户u在时间状态t下的历史签到集合,代表u在时间状态t下有过签到记录;

如果用户v在特定时间状态t下符合上述条件,则记为否则记为

C2、分析个人偏好:

1)分析签到日志中包含的位置信息和主题信息,为日志中出现的每个位置计算主题分布向量,使用符号Dl表示位置l的主题分布向量,其中,代表主题标识;

2)为确定时间状态下的每个用户计算个人偏好分布向量计算公式为:

其中*号表示归一化处理;

计算用户偏好分布和位置主题分布之间的相似度Qu,l,并将其视为用户u对位置l潜在访问的可能性,其中Qu,l=cos in(Du,Dl);

C3、分析用户偏好相似度,计算公式为:其中,表示在特定时间状态t下,用户u和v之间的主题偏好相似度;

C4、分析用户之间的社交信任Su,v:用代表用户u在时间状态t下的信任值,计算公式为:

<mrow> <msubsup> <mi>EL</mi> <mi>u</mi> <mi>t</mi> </msubsup> <mo>=</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>d</mi> <mo>)</mo> </mrow> <msubsup> <mi>N</mi> <mi>u</mi> <mi>t</mi> </msubsup> <mo>+</mo> <mi>d</mi> <munder> <mo>&Sigma;</mo> <mrow> <mi>v</mi> <mo>&Element;</mo> <msubsup> <mi>SC</mi> <mi>u</mi> <mi>t</mi> </msubsup> </mrow> </munder> <mfrac> <mrow> <msubsup> <mi>EL</mi> <mi>v</mi> <mi>t</mi> </msubsup> </mrow> <msubsup> <mi>M</mi> <mi>v</mi> <mi>t</mi> </msubsup> </mfrac> <mo>;</mo> </mrow>

其中是用户u在时间状态t下的签到次数,是v在时间状态t下社交圈的好友数量,d是衰减因子,0<d<1;

根据计算用户之间的社交信任,计算公式为:

<mrow> <msubsup> <mi>S</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>v</mi> </mrow> <mi>t</mi> </msubsup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>EL</mi> <mi>v</mi> <mi>t</mi> </msubsup> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>i</mi> <mi>f</mi> <mi> </mi> <mi>v</mi> <mo>&Element;</mo> <msubsup> <mi>SC</mi> <mi>u</mi> <mi>t</mi> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>0</mn> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>o</mi> <mi>t</mi> <mi>h</mi> <mi>e</mi> <mi>r</mi> <mi>w</mi> <mi>i</mi> <mi>s</mi> <mi>e</mi> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>

C5、分析用户之间的亲近度,首先计算用户之间的亲密程度,计算公式为:

<mrow> <msub> <mi>M</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>v</mi> </mrow> </msub> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mn>1</mn> <mo>+</mo> <mo>|</mo> <msub> <mi>SN</mi> <mi>u</mi> </msub> <mo>&cap;</mo> <msub> <mi>SN</mi> <mi>v</mi> </msub> <mo>|</mo> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>i</mi> <mi>f</mi> <mi> </mi> <msub> <mi>SN</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>v</mi> </mrow> </msub> <mo>=</mo> <mn>1</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>0</mn> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>o</mi> <mi>t</mi> <mi>h</mi> <mi>e</mi> <mi>r</mi> <mi>w</mi> <mi>i</mi> <mi>s</mi> <mi>e</mi> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>

得到用户之间的亲近度,计算公式为:其中,是时间状态t下用户u和v签到中心点之间的空间距离,利用用户签到位置的经纬度数据的平均值表示用户签到中心,将用户的位置投射到地球这个球面上,计算用户之间的距离

4.根据权利要求1所述的基于内存计算框架、融合社交环境及时空数据的位置推荐方法,其特征在于:所述第四步包括以下几个步骤:

D1、对签到矩阵进行拆分:将一天分为Φ个时间状态,把原始社交网络矩阵SN和用户-签到频率矩阵CI分别拆分成Φ个子矩阵,每个子矩阵对应一个时间状态t,使用符号SNt表示子社交网络矩阵、CIt表示子用户-签到频率矩阵;

D2、对用户签到矩阵CIt进行分解,将用户签到矩阵CIt分解成多个签到频率子矩阵相乘的形式,把每个签到频率子矩阵分解成用户隐特征矩阵Ut和位置隐特征矩阵L,k是隐空间的向量维度,分解方法为:

a、利用个人偏好、偏好相似度、社交信任以及亲近度四种社交因素建立推荐模型目标函数,具体为:

其中,*代表归一化的处理,α、λ、β、γ、μ、η代表设置的权重参数,和Ll分别代表k维用户隐特征向量和k维位置隐特征向量,是u在时间状态t下的规范化签到频率;

b、计算用户隐特征矩阵Ut和位置隐特征矩阵L:对推荐模型目标函数进行训练,将和Ll看做变量并分别对它们求偏导,其中的偏导如下:

Ll的偏导数如下:

偏导中是指示因子,代表u在时间状态t下对位置l有过签到,否则

求出偏导后,在梯度方向上更新隐特征向量,把每次更新后的向量代入到推荐模型目标函数中重新计算,让函数值以最快速度向下减小;不断迭代该过程直至推荐模型目标函数收敛为止,最后得到用户隐特征矩阵Ut和位置隐特征矩阵L;

D3、合并用户隐特征矩阵Ut和位置隐特征矩阵L:得到用户隐特征矩阵Ut和位置隐特征矩阵L后,按UtLT算法预测用户在每个时间状态t下的签到偏好矩阵并使用投票方案将不同时间状态下的预测矩阵合并为统一的位置偏好预测矩阵其中,T代表矩阵转置运算。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1