主权项 |
一种基于社团发现的数字电视节目推荐方法,包括:步骤202,节目推荐系统根据电视用户的登录信息获取与用户相关的多层社会网络数据;步骤204,节目推荐系统利用社团发现方法对多层社会网络进行社团划分;步骤206,节目推荐系统根据步骤204得到的社团划分情况,以社团为单位向各个社团成员的数字电视接收端发送相应的节目推荐信息;其中,步骤204包括如下步骤:a).对于多层社会网络中的每一对(x,y),x∈MN(y),即网络中的两个用户x,y为多层邻居,按照下式计算跨层边差分聚类系数CLEDCC(x,y):<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>C</mi><mi>L</mi><mi>E</mi><mi>D</mi><mi>C</mi><mi>C</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><munderover><mo>Σ</mo><mrow><mi>α</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>w</mi><mi>α</mi></msub><mo>·</mo><mfrac><mrow><mo>|</mo><mi>D</mi><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>α</mi><mo>)</mo></mrow><mo>∩</mo><mi>D</mi><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>y</mi><mo>,</mo><mi>α</mi><mo>)</mo></mrow><mo>|</mo><mo>+</mo><msubsup><mi>δ</mi><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mi>α</mi></msubsup></mrow><mrow><mo>|</mo><mi>D</mi><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>α</mi><mo>)</mo></mrow><mo>∪</mo><mi>D</mi><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>y</mi><mo>,</mo><mi>α</mi><mo>)</mo></mrow><mo>/</mo><mo>{</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>}</mo><mo>|</mo><mo>+</mo><msubsup><mi>δ</mi><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mi>α</mi></msubsup></mrow></mfrac><mo>,</mo></mrow>]]></math><img file="FDA0000815727930000011.GIF" wi="1583" he="226" /></maths>并记录初始的模块化度Q和社团划分情况,其中,DMN(x,α)和DMN(y,α)为差分多层社团邻居,<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>D</mi><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>α</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>α</mi><mo>)</mo></mrow><mo>-</mo><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>α</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mi>α</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mo>...</mo><mo>,</mo><mi>N</mi><mo>-</mo><mn>1</mn></mrow></mtd></mtr><mtr><mtd><mrow><mi>M</mi><mi>N</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>N</mi><mo>)</mo></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mi>α</mi><mo>=</mo><mi>N</mi></mrow></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000815727930000012.GIF" wi="1481" he="221" /></maths><img file="FDA0000815727930000013.GIF" wi="1415" he="219" />N为多层社会网络的最大关系数,α为关系层数,w<sub>α</sub>=2α/(N(N+1)),MN(x,α)和MN(y,α)分别为对于多层社会网络,给定节点x和y在关系层数为α时的邻居,MN(x,N)为对于多层社会网络,给定节点x在关系层数为N时的邻居;b).在所有关系中,移除CLEDCC值最小的一对(x,y),当同时存在多个最小值时,随机选取一个;c).更新CLEDCC(x,y)值,重新计算CLEDCC值可能被改变的边,也就是上一次被移除边的所有邻居节点,记录模块化度Q和社团划分情况;d).重复第b)步,直到多层社会网络中的边全部被移除;e).比较每次社团划分后的模块化度Q,选择具有最大Q值的社团划分情况作为最终社团划分。 |