用于内容推荐的设备、方法和计算机程序以及记录介质的制作方法

文档序号:6580293阅读:105来源:国知局
专利名称:用于内容推荐的设备、方法和计算机程序以及记录介质的制作方法
技术领域
本发明涉及用于推荐内容的设备、方法、计算M序和记录介质,尤其涉及用于以适当地反映对用户的重要程度(诸如用户偏好的每个属性和分量)的方式向用户推荐内容的设备、方法、计算枳4呈序和记录介质。
背景技术
已经开发出了向用户推荐内容(诸如记录下的广播节目)的技术。基于通过在以内容元数据中所包含的属性作为分量的向量和形成为包含数
量与所述元数据向量的分量相同的分量的向量的用户偏好信息之间的匹配过程所计算出的相似度来进行内#荐。
曰本未审查专利申请2007-200339号^^艮7>开了 一项技术。纟艮据所>^开的技术,接收电子节目指南(EPG)数据,从EPG数据中提取元数据,并对元数据中所包含的标题和内容进行语素分析并将其分解成单词。一项向量化以生成节目向量。基于所提供的元数据的节目类型提取效果向量。将所生成的节目向量映射到效果向量。

发明内容
在用户偏好信息和节目向量之间的相似度计算中曾使用与个体无关的公共固定值作为效果和权重。然而,在实际中,被认为是很重要的属性因用户而异,并且所述公共固定值不能对个体差异进行补偿。即使使用作为公共固定值的所述效果和权重来计算所^目似度从而推荐项目,也不一定能推荐出与用户偏好真正匹配的项目。
例如,可以允许用户输入重要属性并响应于所述输入结果个别地调节权重。采用这种方法,能够补偿所述个体差异。
用户偏好是一个非常抽象的概念,甚至用户也难以表达其自己的偏好。用户或许不能容易地发现重要的属性。用户偏好可以随时间而发生变化。例如,在观看了包括广播节目和
DVD的大量内^4L后,用户或许发现某个属性比原先i人为重要的那个属性更重要。
因此希望提供用于以反映对用户的重要程度(诸如用户偏好的每个属性和分量)的方式向用户推荐内容的设备、方法、计算M序和记录介质。
根据本发明的一个实施例,推荐i殳备包括调节信息存储装置,用于生成并存储调节信息,所述调节信息把通过将用户偏好信息中的分量与项目偏好信息中的分量之间的分量相似度乘上权重系数而得到的值映射到响应于用户对项目进行的^作的类型而确定的评伯、值的目标,所述用户偏好信息表示所述用户的偏好,并且被构造成包含多个分量的向量,所述项目偏好信息基于作为推荐目标的每个项目的元信息而生成,并且包含数目与所述用户偏好信息的分量数目相同的分量;多元回归分析装置,用于基于多个调节信息通过多元回归分析逐个用户地计算每个权重系数,所述用户偏好信息的每个分量都乘上各自的权重系数;权重系数存储装置,用于逐个用户地存储所计算的权重系数,在所述评价值的计算中,所述用户偏好信息的每个分量都乘上各自的计算出的权重系数;以及推荐项目识别装置,用于基于所述用户偏好信息和所述项目偏好信息的每个分量以及基于与所述分量相应的所述权重系数计算出的评价值来识别要向所述用户推荐的项目。
在预定时间段内生成的调节信息可以作为所述多元回归分析的目标。
在每个预定的周期生成并存储所述调节信息。逐个用户地计算所i1^重系数。逐个用户M储计算出的权重系数。在所述评价值的计算中,用户偏好信息的每个分量都乘上各自的计算出的权重系数。
所述推荐设备可以进一步包括调节信息删除装置,用于删除在所述多元回归分析中使用的调节信息。
所述调节信息删除装置可以按照从旧到新的生成顺序删除预定百分比的调节信息。
调节信息可以包含由所述用户操作的类型确定的使用数,以及调节信息删除装置可以删除在所述多元回归分析中使用了所述使用数的调节信息。
根据本发明的一个实施例, 一种推荐方法,包括步骤生成并存自节信息,所述调节信息把通过将用户偏好信息中的分量与项目偏好信息中的分量之间的分量相似度乘上权重系数而得到的值映射到响应于用户对项目进行的操作的类型而确定的评价值的目标,所述用户偏好信息表示所述用户的偏好,并且被构造成包含多个分量的向量,所述项目偏好信息基于作为推荐目标的每个项目的元信息而生成,并且包含数目与所述用户偏
好信息的分量数目相同的分量;基于多个调节信息通过多元回归分析逐个用户地计算每个权重系数,用户偏好信息的每个分量都乘上各自的权重系数;逐个用户地存储所计算出的权重系数,在所述评价值的计算中,所述用户偏好信息的每个分量都乘上各自的计算出的权重系数;以及基于所述用户偏好信息和所述项目偏好信息的每个分量以及基于与所述分量相应的所述权重系数计算出的所述评价值来识别要向所述用户推荐的项目。
根据本发明的一个实施例, 一种计算^i^呈序,用于使计算机执行步骤生成并存储调节信息,所述调节信息把通过将用户偏好信息中的分量与项目偏好信息中的分量之间的分量相似度乘上权重系数而得到的值映射到响应于用户对项目进行的^Mt的类型而确定的评^Hi的目标,所述用户偏好信息表示所述用户的偏好,并且被构造成包含多个分量的向量,所述项目偏好信息基于作为推荐目标的每个项目的元信息而生成,并且包含数目与所述用户偏好信息的分量数目相同的分量;基于多个调节信息通过多元回归分析逐个用户地计算每个权重系数,所述用户偏好信息的每个分量都乘上各自的权重系数;逐个用户地存储所计算出的权重系数,在所述评价值的计算中,所述用户偏好信息的每个分量都乘上各自的计算出的权重系数;以及基于所述用户偏好信息和所述项目偏好信息的每个分量以及基于与所述分量相应的所述权重系数计算出的所述评价值来识别要向所述用户推荐的项目。
根据本发明的各实施例,生成并存储调节信息。所述调节信息把通过将用户偏好信息中的分量与项目偏好信息中的分量之间的分量相似度乘上权重系数而得到的值映射到根据用户对项目进行的操作的类型而确定的评价值的目标。所述用户偏好信息表示所述用户的偏好,并且被构造成包含多个分量的向量,所述项目偏好信息基于作为推荐目标的每个项目的元信息而生成,并且包含数目与所述用户偏好信息的分量数目同样多的分量。基于多个调节信息通过多元回归分析逐个用户地计算每个权重系数,其中所述用户偏好信息的每个分量都乘上所述各自的权重系数。逐个用户地存储所述计算出来的权重系数,其中在所述评价值的计算中,所述用户偏好信息的每个分量都乘上各自的计算出的权重系数。基于所述用户偏好信息和所述项目偏好信息的每个分量以及基于与所述分量相应的权重系数计算出来的评价值来识别要向所述用户推荐的项目。
根据本发明的各实施例,以适当地反映对用户的重要程度(诸如用户偏好的每个属性和分量)的方式来进行内容推荐。


图l是根据本发明一个实施例的推荐系统的框图2示出图l所示的^Mt日志lt据库(DB)的结构;
图3示出项目元信息的例子;
图4示出图l所示的项目元数据库;
图5示出图l所示的用户偏好数据库;
图6是示出图1所示的推荐系统的推荐列表生成过程的流程图7是示出匹配过禾呈的流程图8是示出根据本发明一个实施例的另一个推荐系统的框图9示出图8所示的属性权重数据库;
图10示出图8所示的属性权重调节数据库;
图11是示出属性权重调节数据库生成过程的流程图12是示出属性权重计算过程的流程图13是示出属性权重调节数据库管理过程的流程图14示出图8所示属性权重调节婆:据库的另一个例子;
图15是示出另一个属性权重调节数据库管理过程的流程图;以及
图16是示出个人计算机的结构的沖匡图。
具体实施例方式
下面将参考附图来描述本发明的实施例。
图1是示出根据本发明一个实施例的推荐系统10的结构的框图。推荐系统IO旨在向用户推荐由诸如视频和音频的数据构成的项目。例如,
所述项目包含诸如广播节目的内容、通过对数字通用盘(DVD )上所记
录的电影进行复制而获得的内容等。图l所示的推荐系统10包括终端21、操作日志数据库(DB) 22、项目元数据库(metaDB) 23、偏好提取引擎24、用户偏好数据库25、推荐引擎26、基分量/逆分量(base/inversion component)提取器27、成熟度计算引擎28。操作日志数据库22到成熟度计算引擎28可以由至少一个计算机(服务器)构成,以作为推荐设备,并经由网络与终端21互连。
由此,终端21与由操作日志数据库22到成熟度计算引擎28所构成的推荐设备分开安置。或者,可以使用至少一个计算机来设置整个推荐系统10。
在推荐系统10中,所述推荐设^^皮设计为响应于来自终端21的请求向终端21发送推荐项目列表。例如,推荐系统10基于每个项目的元信息推荐与用户偏好相匹配的项目。后面将^^描述,推荐系统10响应于来自终端21的请求有意地向用户推荐会4吏用户惊讶的项目。
如图1所示,用户通过对作为记录在终端21上的项目的内容数据进行再现来观看所述项目。通iW"终端21进行操作,用户可以记录项目,诸如广播节目。用户也可以将终端21上存储的内容数据发送到移动终端。用户也可以从终端21删除内容数据。通过对终端21进行操作,用户就这样来对项目进行各种处理。
与终端21的涉及每个项目的各种类型的操作相关的信息被作为操作日志输出,基于所述操作日志而产生的记录被存储在操作日志数据库22上。图2示出存储在操作曰志数据库22上的数据。
如图2所示,每行所列数据对应着操作日志数据库22上的各个记录。操作日志数据库22的每个记录包含四个字段"项目Id"、"成员Id"、"曰志类型"和"日志时间"。
"项目Id"字段存储标识在相应操作中被处理的目标项目的项目Id的值。在这种情形中,值"1001"、 "1003"、 "1009"…被存储在各个记录的"项目Id"字段中。
"成员Id"字段存储标识执行了所述操作的用户的用户(成员)ID的值。值"1"、 "3"、 "1"...被存储在各个记录的"成员Id"字段中。
"曰志类型"字段存储标识所述操作的类型的信息。在这种情形中,"保留"、"细节"、"好"…被存储在各个记录的"曰志类型"字段中。"曰志类型"字段中所存储的信息是根据预定方法将所述操作类型(诸如观 所述项目或记录所述项目)转换成的字符串。"日志时间,,字段存储标识执行所述操作的日期和时间的信息。在本
例中,在"日志时间"字段中存储着信息"2007-12-05 08:39:44 (表示2007年12月5日8点:39分:44秒)。
与附到每个项目的元信息有关的信息被存储在项目元数据库23上。例如,从电子节目指南(EPG)获得所述元信息。所述元信息包含所述项目(内容)的诸如类型、表演者、关键字等信息。
图3示出附到给定项目(内容)的项目元信息。所述项目元信息包含属性、值和得分。所述项目元信息的属性包括"类型"、"人员(诸如所述内容中的表演者)"、"关键字"...。所述项目元信息的值指示每个属性的組成部分(segment)。属性"类型"中所包含的值为"戏剧"、"新闻"、"纪录片"...。所述项目元信息的得分是附到每个值的得分。在本例中,值"戏剧"的得分为"5",值"新闻"的得分为"0",值"纪录片"的得
分为"r。
与图3的例子中的项目元信息相对应的项目接近于戏剧,但还包含纪录片的元素。
属性"人员"的值列出了 "ABC"、 "DEF"、 "GHI"…。在本例中,值"ABC"的得分为"1",值"DEF"的得分为"1",值"GHI"的得分为"1"…。
与图3中的项目元信息相对应的项目包含"ABC"、 "DEF"、和"GHI"(虚构的名字)作为其表演者。
图3中的属性"关键字"的值包含"美食家"、"旅游"、"音乐"...。值"美食家"的得分为"3",值"旅游"的得分为"5",值"音乐"的得分为'T,...。属性"关键字"的值是介绍某个项目(诸如广播节目)的消息(诸如EPG中的节目描述)中所包含的预定词。例如,从EPG中的节目的介绍性句子中检测到诸如"美食家"、"旅游"和"音乐"的预定词,并且响应于每个词的检测数来设置其得分。
与图3中的项目元信息相对应的项目是与"美食家"、"旅游"和"音乐"相关的内容,特别是与"旅游"密切相关的内容。
项目元数据库23存储根据值划分每个项目的项目元信息而成的记录。图4示出项目元数据库23上所存储的数据的例子。
参考图4,每行中所列的数据对应着项目元数据库23上的每个记录。项目元数据库23上的每个记录包含5个字段"项目Id"、"属性Id"、"值Id"、"次数"以及"得分"。
"项目Id"字段存储标识所述记录的项目的项目ID值。在本例中,在各个记录的"项目Id"字段中存储着值"2000114789142"、"200019580489"、 "100024316163"…。
"属性Id"字段存储标识所述记录的属性的属性ID值。值"1"被存储在每个记录的"属性Id"字段中。"属性Id"字段中所存储的值"1"对应着属性"类型","属性Id"字段中所存储的值"2"对应着属性"人员"...。这样,"属性Id"字段中的值确定了每个记录的属性。在本例中,"属性Id,,字段中的所有值均为"1"。在实际中,项目元翁:据库23也包含在"属性Id"字段中具有值"2"、 "3"…的记录。
"值Id"字^1存储标识记录的值的值ID的值。在本例中,值"153144"被存储在每个记录的"值Id"字段中。例如,存储在"值Id"字段中的值"153144"对应着值"戏剧",存储在"值Id"字段中的值"153145"对应着值"新闻,,...。所述记录的值由"值Id"字段中的值来标识。在本例中,"值Id"字段中的所有的值都为"153144"。在实际中,项目元数据库23也存储具有"值Id"字段中值"153145"、 "153146"…的记录。
"次数"字段存储标识记录的更新数目的值。"次数,,字段可以被省略。
"得分"字段存储标识记录的值的得分的值。图3中的得分的值^:存
储在"得分"字段中。例如,图4中的顶部的记录具有项目ID为"2000114789142"的项目的项目元信息的值"戏剧"(在"值Id"字段中具有值"153144")的得分。
如上所述来构造项目元数据库23。通过获取能够成为终端21的操作目标的每个项目的内容的元数据来预先生成项目元数据库23。
返回到图1,偏好提取引擎24基于操作日志数据库22的记录和项目元数据库23的记录使用户偏好数据库25存储数据。
响应于操作日志数据库22的记录,偏好提取引擎24识别用户通过操作终端21而处理了的项目的项目ID,并识别所述^Mt的类型。响应于所识别的项目ID,偏好提取引擎24搜索项目元数据库23上的记录,由此识别具有所识别的项目ID的项目的项目元信息的属性、值和得分。
然后,偏好提取引擎24生成将所识别的属性、值和得分映射到用户的成员ID的记录。然后,偏好提取引擎24将所述得分的值乘上响应于所述操作的类型预先设定的系数。例如,如果响应于操作日志数据库22的记录识别的操作类型为记录项目,那么,基于项目元数据库23的记录识别的得分的值就乘上系数3。如果响应于操作日志数据库22的记录识别的操作内容为观看项目,那么,基于项目元数据库23的记录而识别的得分的值就乘上系数2。
这样生成的记录变成用户偏好数据库25的记录。图5示出用户偏好数据库25的例子。
参考图5,每行所列的数据对应着用户偏好数据库25的记录。用户偏好数据库25的每个记录包含4个字段"成员Id"、"属性Id"、"值Id"和"得分"。
如前面参考图2所示的操作日志数据库22所说明的那样,"成员Id"字段标识图5中的用户。如前面参考图4的项目元数据库23所说明的那样,图5中所示的"属性Id"字段、"值Id"字段和"得分"字段也标识所述属性、值和得分。
图5所示的用户偏好数据库25基于值来生成。具体说,对于由一个人员所进行的一个操作产生多个记录。所产生的记录的数目等于作为操作目标的项目的项目元信息的值的数目。
每次由用户进行了 ^Mt时,所述记录被存储在用户偏好数据库25上。具体说,响应于一个操作所产生的记录的数目等于作为操作目标的项目的项目元信息的值的数目。
返回图1,推荐引擎26基于用户偏好数据库25的记录来产生用户偏好信息。推荐引擎26也基于项目元数据库23的记录来产生项目偏好信息。所述用户偏好信息和项目偏好信息各自都是向量,每一个都具有与属性数目同样多的分量数目。例如,如果项目偏好信息的属性之和为100,那么,用户偏好信息和项目偏好信息中的每一个都是100维向量(有100个分量)。
所述用户偏好信息的每个分量的值被确定如下。推荐引擎26检查图5的用户偏好数据库25的记录,并获WA:映射到用户的成员ID的所有记录。推荐引擎26根据"属性Id"字段的值来排序所述记录。如果多个记录具有同样的"属性Id"字段的值,那么,推荐引擎26将这些记录的"得分"字段中的值加起来作为总数。在所述用户偏好信息向量中与属 "类型"(在"属性Id"字段中为1)相应的分量的值为值"戏剧"、"新闻"、"纪录片"...的得分之和。这样就产生了所述用户偏好信息,其中,属性的得分之和为每个分量的值。
项目偏好信息的每个分量的值的获得与用户偏好信息的值的获得方
式相同。在生成项目偏好信息时,推荐引擎26基于图4所示的项目元数据库23的记录来计算所述向量的每个分量的值。 一个项目偏好信息向量响应于一个项目ID来生成。
基分量/逆分量提取器27从用户偏好信息向量和项目偏好信息向量中4C取基分量和逆分量。所4分量有力地反映用户的偏好,而所述逆分量有力地反映使用户产生的惊异。基分量/逆分量提取器27按下述方式:R取所i^分量和逆分量。
基分量/逆分量提取器27计算通过将用户偏好信息向量的每个分量乘上在后面要说明的方程(1)中所表达的权重wa来确定的值的占有率(occ叩ancyrate)。为了说明简单起见,设用户偏好信息为三维向量,并且用户的用户偏好信息为向量(1, 2, 3 )。通过将用户偏好信息的分量的原始值乘上方程(1)的权重wa来产生向量(1, 2, 3)。如后面要描述的,所述权重wa是预先为所述向量的每个分量确定的系数。现在预定了权重wl到w3。如果原始的用户偏好信息为向量(x, y, z),那么,满足关系x ■ wl=l, y w2=2以及z w3=3。
在这种情形中,第一分量的占有率祁^据下面的等式来计算
1/(1+2+3)=0.1666 17%
第二分量的占有率^^据下面的等式来计算
2/(1+2+3)=0.3333 33%
第三分量的占有率才艮据下面的等式来计算
3/(1+2+3)=0.5000 50%
基分量/逆分量提取器27基于这样计算出来的占有率来提取基分量和逆分量。例如,在所述用户偏好信息向量的各分量中,具有最高占有率的分量为所述基分量,而具有第二高占有率的分量则为所述逆分量。在下面的i兌明中,所述用户偏好信息向量为n维向量。
基分量/逆分量提取器27提取具有第三高占有率的分量、具有第四高占有率的分量...,直到提取出来作为基分量的分量的占有率以及随后提取出来的分量的占有率之和达到预定值(例如,50%)为止。然后,基分量/逆分量提取器27将这些分量i殳置为基分量。
这里所设置的值(例如50% )依据后面要说明的成熟度计算引擎28所计算出的成熟度来确定。
例如,当提取具有第五高占有率的分量时,提取出来作为基分量的分量的占有率之和可以达到所述预定值。然后,基分量/逆分量提取器27提
取具有第六高占有率的分量、具有第七高占有率的分量.....具有第N
高占有率的分量。包括提取出来作为第一逆分量的这些分量被设置为逆分量。因此,就提取出来了基分量和逆分量。
上il^分量和逆分量的^^方法只是一个例子。也可以通过其它方法来提取所述基分量和逆分量。
基分量/逆分量提取器27向推荐引擎26通知与提取出来作为基分量的每个分量相应的"属性Id"字段的值,以作为基分量ID。基分量/逆分量提取器27也向推荐引擎26通知与提取出来作为逆分量的每个分量相应的"属性Id"字段的值,以作为逆分量ID。
推荐引擎26响应于基分量ID来识别用户偏好信息向量中的基分量,并识别项目偏好信息向量中的基分量。推荐引擎26也从用户偏好信息向量和项目偏好信息向量的每一个中提取基分量。这样就生成了用户偏好信息的基向量和项目偏好信息的基向量。
响应于逆分量ID,推荐引擎26识别用户偏好信息向量中的逆分量,以及项目偏好信息向量中的逆分量。然后,推荐引擎26从用户偏好信息向量和项目偏好信息向量的每一个中提取逆分量。这样就生成了用户偏好信息的反转向量和项目偏好信息的反转向量。
推荐引擎26进行匹配处理来对照根据项目元数据库23产生的每个项目的项目偏好信息的基向量检查已经请求项目推荐的用户的用户偏好信息的基向量。可以使用计算向量内积的方法、计算余弦相似度的方法、计算欧几里德距离的方法等来进行所述匹配过程。
如果4吏用计算向量内积的方法作为所述匹配过程,那么,作为所述匹配过程结果而得到的向量X和Y之间的相似度sim(X, Y)就用方程(1)来表达
sim(X,Y) - I!(|Xa'Ya|xWa) ' ' . (1)集合A中包含的一个分量。"Xa"和"Ya"分别表示向量X和向量Y中的分量"a"的值,而"wa"表示分量a所乘的系数,它也被称作权重。权重wa可以是为每个分量预定的值,或也可以为每个用户而设定。
各权重wa是所述向量的分量各自所乘的系数。在实际中,与用户偏好信息(项目偏好信息)的分量相应的系lbl存在的。如果用户偏好信息是具有N个分量的向量,那么,权重wa就^^示为N维向量。
具体说,如果用户偏好信息(项目偏好信息)有100个分量,那么,这些分量就对应着第一个属性到第一百个属性。在这种情形中,权重wa是与所述第一到第一百个属性相对应的系数的集合。设Wn表示第n个属性的权重,则权重wa^示为如下包含100个分量的向量
(w^ w2, w3,…,w100)
在上逸基向量的匹配过程中,如果分量a为第5分量,那么,以(Wi,W2,W3,…,Wk)。)中的ws替换方程(1)中的wa,并计算相似度。
推荐引擎26计算用户的用户偏好信息的基向量和每个项目的项目偏好信息的基向量之间的相似度。然后,推荐引擎26将所计算出的相似度作为勤目似度(basic similarity )存储起来,其中每个项目(诸如项目ID)被映射到基相似度。
所计算出的斜目似度越高,项目就与用户偏好越匹配。
推荐引擎26提取预定数目的具有高的勤目似度的项目,并将所提取的项目设置为候选项目。然后,推荐引擎26如下述那样对每个候选项目计算逆相似度(inversion similarity )。
推荐引擎26根据方程(1)计算用户的用户偏好信息的反转向量和候选项目的项目偏好信息的反转向量之间的相似度。然后,所计算出的相似度被存储起来,以作为逆相似度,其中每个项目被映射到逆相似度上。
所计算出的逆相似度越高,项目与用户偏好就越可能相匹配。
推荐引擎26基于上i^目似度和逆相似度计算每个项目的惊异推荐估计值。所述惊异推荐估计值表示用户对所推荐的项目以正面的方式感到惊异的可能性。
例如,根据下面的等式响应于项目A的逆相似度Hanten(A)来计算所述项目A的惊异推荐估计值igaiDegree(A):igaiDegree(A)=l - Hanten(A)
所述项目A的逆相似度越小,所述项目A的惊异推荐估计值越大。
可以根据下述等式使用项目A的Jjt目似度Base(A)来计算所述项目A的惊异推荐估计值。
igaiDegree(A)= oc Base(A) - P Hanten(A)
在上述等式中,oc和p分别为预定的系数。
推荐引擎26按惊异推荐估计值从高到低的顺序推荐预定数目的项目。例如,推荐引擎26从具有最高惊异推荐估计值的项目开始识别预定数目的项目,然后生成列出这些项目的推荐列表。推荐引擎26将所述推荐列4iL送给终端21。
根据本发明的一个实施例,根据勤目似度来缩减候选项目,然后基于逆相似度来计算惊异推荐估计值。由此就识别了要推荐的项目。
图1所示的成熟度计算引擎28计算用户偏好信息的成熟度。成熟度被如下计算成熟度计算引擎28从最新记录开始按从新到旧的顺序提取存储在用户偏好数据库25上的用户的预定数目的记录。例如,提取响应于由用户对终端21进行的三个最新操作而产生的记录。
成熟度计算引擎28检查所提取的记录的"值Id"字段,并存储指示"值Id"字段的值的类型的数目的值xvn。例如,按照存在时间(age)
顺序提取用户的三个最新记录。如果这三个记录的"值Id"字段的值为"11"、 "22"和"33",那么xvn-3。如果这三个记录的"值Id"字段的
值为"11"、 "22"和"11",那么,xvn=2。
成熟度计算引擎28确定指示用户偏好数据库25上现有的"值Id"字段的值的类型的总和的值yvn,并根据下面的等式来计算成熟度M:
M=l-(xvn/yvn)
其中,xvn的值是响应于由用户对终端21进行的一个操作的记录的"值Id"字段的值的类型的数目的平均值。
具体说,成熟度计算引擎28基于与用户偏好信息的最新操作相应的更新程度来计算成熟度M。
与用户偏好信息的最新操作相应的更新程度越高,即,(xvn/yvn)的值越大,就认为用户偏好的改变越大。如果在最新操作中用户偏好发生了4艮大的改变,那么看来所述用户的用户偏好信息就还有待成熟。这种用户偏好信息可能在之后的操作中发生很大的改变。
如果用户偏好信息在最近的操作中没有发生很大的改变,那么,就认为所述用户的用户偏好信息是成熟的。这种用户偏好信息在之后的操作中不太可能发生^f艮大的改变。
例如,在用户的成员ID的记录在用户偏好数据库25上第一次生成之后的预定时间内,可以因为用户偏好信息的不成熟而将成熟度M的值设置为零。如果所述用户的操作的数目少于预定的阈值,那么因为^人为用户偏好信息是不成熟的,所以可以将成熟度M的值设置为零。
已经描述的成熟度M的计算方法只用于示范性目的,在成熟度M的计算中可以使用其它方法。
基于由成熟度计算引擎28计算出的成熟度M,在基分量/逆分量提取器27的基分量提取中,设置包括提取出来作为第一基分量的分量的占有率的占有率之和。如前所述,在所述占有率的计算中,用户偏好信息的每个原始分量的值乘上了各自的权重wa。
例如,如果成熟度M落入0%到40%的范围内,那么,就认为用户偏好信息是不成熟的,并将基分量的占有率之和设置为80%。从所述不成熟的用户偏好信息中提取出来的逆分量被认为是不太可靠的。
如果成熟度M落入41。/。到70%的范围内,那么,就i人为用户偏好信息有一些成熟,并将基分量的占有率之和设置为65%。
如果成熟度M落入71%到100%的范围内,那么,就认为用户偏好信息是成熟的,并将基分量的占有率之和设置为50%。从所述成熟的用户偏好信息中提取出来的逆分量就被认为是高度可靠的。
基于用户偏好信息的成熟度M把所述基向量和反转向量的分量定下来。
根据本发明的一个实施例,根据具有基于用户偏好信息的成熟度M定下来的分量的基向量和反转向量来计算相似度。首先,基于^目似度来缩减候选项目。然后,基于逆相似度来计算惊异推荐估计值,以便识别要推荐的项目。这样,可以向用户推荐可能会使用户从正面感到惊异的项目。
如果某内容与用户通常所看到的项目有这样或那样的轻微不同,但同时另一方面用户仍然基本上觉得对该内容比较熟悉,那么,该用户就可能会享受该内容所带来的惊异。例如,如果推荐了与用户偏好不匹配的内容,那么,用户自然不会满意该内容。
根据相关领域中的一种技术,通过改变属性的权重来增加该属性对匹配结果的贡献。这种技术未必以一种容易理解的方式向用户推荐用户觉得有关联的内容。
即使在改变每个属性的权重的技术中将用户偏好信息的特定属性的权重设置得高,所述内容的元数据中所包含的属性的值也可以是小的,并且该内M推荐的可能性保持为低。另一方面,即4吏将用户偏好信息的特定属性的权重设置得低,所述内容的元数据中所包含的属性的值也可以是
大的,并且该内^L推荐的可能性保持为高。
根据相关技术,能够推荐与用户通常观看的内容类型不同的内容,并且所述用户对所述内容感到惊异。然而,仍然不确定的是用户能愉快地接受这才羊的惊异。
根据本发明的实施例,基于勤目似度来缩减候选项目,并基于逆相似度来计算惊异推荐估计值,以便识别要推荐的项目。
勤目似度和逆相似度均表示用户偏好信息和项目偏好信息之间的相似度。勤目似度和逆相似度的每一个的值越高,项目与用户偏好相匹配的可能性就越高。另一方面,勤目似度和逆相似度的每一个的值越低,项目与用户偏好相匹配的可能性就越低。
例如,如果推荐了具有较^^目似度的项目,那么,用户肯定对该项目感到惊异。这样的项目不与用户偏好相匹配,用户也不能将其作为愉快的惊异而接受。
根据本发明的一个实施例,用户偏好信息向量被分成用户偏好信息的基向量和反转向量。具有基于基向量的高相似度(勤目似度)的项目被缩减,然后,具有基于反转向量的低相似度(逆相似度)的项目被选择。采用根据本发明实施例的布置,可靠地推荐能被用户作为愉快的惊异而接受的项目。
下面将参考图6所示的流程图来描述图1所示的推荐系统10的推荐列表生成过程。当发出了向用户推荐旨在使用户感到惊异的项目的请求时,就执行所述推荐列表生成过程。
在步骤Sll中,成熟度计算引擎28计算成熟度M在步骤S12中,基分量/逆分量提取器27基于步骤S11中所计算出来的成熟度M来设置基分量与逆分量之比。例如,将成熟度M的值与预定的阈值进行比较,并确定用户偏好信息的成熟度M的水平(例如,不成熟、不太成熟、以及成熟)。响应于成熟度M的水平来设置所a分量与逆分量之比。例如,将占有率之和设置为80%、 65%、 50%等。
在步骤S13中,基分量/逆分量提取器27和推荐引擎26执行后面参考图7说明的匹配过程。对用户偏好信息和项目偏好信息的基向量和反转向量执行匹配过程。计算每个项目的勤目似度和逆相似度,并将其存^ft起来。因此,步骤S13中的操作识别候选项目,作为要被推荐的候选。
在步骤S14中,推荐引擎26为步骤S13中所识别的每个候选项目计算惊异推荐估计值。如前所述,根据下面的等式基于项目A的逆相似度Hanten(A)来计算项目A的惊异推荐估计值igaiDegree(A):
igaiDegree(A)=l-Hanten(A)
可以根据下述等式基于项目A的基相似度Base(A)来计算所述项目A的惊异推荐估计值igaiDegree(A):
igaiDegree(A)= oc Base(A)画P Hanten(A)
在步骤S15中,推荐引擎26识别要推荐的项目。在这种情形中,从候选项目中识别预定数目的具有高的惊异推荐估计值的项目。
在步骤S16中,推荐引擎26生成推荐列表的数据,推荐列表被构造为在步骤S15中被识别为要推荐的项目的列表。将这里所生成的推荐列表数据发送到终端21。然后,将所述推荐列表显示在终端21的显示器上,向用户推荐所述项目。
因此就执行了所述推荐列表生成过程。这样,推荐了为用户提供愉快的惊异的项目。
下面将参考图7所示的流程图来详细描述图6所示的步骤S13中的匹配过程。
在步骤S31中,基分量/逆分量提取器27从用户偏好信息中提取基分量。
如前所述,基分量/逆分量提取器27通过将用户偏好信息向量的每个分量乘上方程(1)的每个权重来计算值的占有率。例如,用户偏好信息向量的各分量中具有最高占有率的分量被设置为基分量,而具有第二高占
19有率的分量不被设置为基分量。提取具有第三高、第四高…占有率的分量,
直到包括所述第一分量的所4C取的分量的占有率之和达到在步骤S12中所处理的值为止。这些分量被设置为基分量。基于所提取的基分量的"属性Id"字段的值从所述用户偏好信息中提取所述基分量。
在步骤S32中,基分量/逆分量提取器27从项目偏好信息中提取基分量。在这种情形中,从所述项目偏好信息中提取与在步骤S31中所提取的基分量相对应的分量。
在步骤S33中,推荐引擎26计算由步骤S31中所提取出来的基分量所构成的用户偏好信息的基向量和由步骤S32中所提取出来的基分量所构成的项目偏好信息的基向量之间的相似度。例如,使用方程(1)来计算所i^目似度。计算与要推荐的项目的数目相等的数目的相似度。这些相似度变成了与所述项目相对应的勤目似度。
在步骤S34中,推荐引擎26按步骤S33所计算出的相似度从高到低的顺序识别预定数目的项目,作为候选项目。
在步骤S35中,推荐引擎26将步骤S33中计算出来的勤目似度存储起来,其中在步骤S34中所识别的候选项目被映射到勤目似度上。
在步骤S36中,基分量/逆分量提取器27从用户偏好信息中提取逆分量。在这种情形中,例如,在步骤S31中没有被提取为基分量的分量被提取为逆分量。
在步骤S37中,基分量/逆分量提取器27从项目偏好信息中提取逆分量。在这种情形中,从所述项目偏好信息中提取与在步骤S36中所提取的逆分量相对应的分量。
在步骤S38中,推荐引擎26计算由步骤S36中所提取出来的逆分量所构成的用户偏好信息的反转向量和由步骤S37中所提取出来的逆分量所构成的项目偏好信息的反转向量之间的相似度。例如,使用方程(l)来计算所述相似度。计算与要推荐的项目的数目相等的数目的相似度。这
些相似度变成与所述项目相对应的逆相似度。
在步骤S39中,推荐引擎26将步骤S38中计算出来的逆相似度存储起来,其中在步骤S34中所识别的候选项目被映射到逆相似度上。
就这样来进行所述匹配过程。
在上面的说明中,推荐系统10推荐旨在使用户惊异的项目。也可以推荐不旨在使用户惊异的项目。如果推荐系统10推荐不旨在^f吏用户惊异的项目,那么,推荐引擎26就对用户偏好信息和项目偏好信息直M行匹配过程,并计算所i^目似度。对具有高的计算出的相似度的项目进行推荐。
方程(1)的权重wa可以是为每个分量预定的权重,也可以是为每个用户预置的权重。
当计算用户偏好信息和项目偏好信息之间的相似度时,在相关技术中使用不依赖于个体的固定权重。然而,在实际中,被认为是重要的属性对于不同的用户来说是不同的,普通的固定值不能够对个体差异进行补偿。即使使用作为普通固定值的权重来计算所^f目似度从而推荐项目,也不一定能推荐出与用户偏好真正匹配的项目。
例如,可以允许用户输入重要的属性,并可以响应于输入结果单独调节所a重。采用这种布置,能够补偿个体差异。
用户偏好是非常抽象的概念,甚至用户难以表达其自己的偏好。用户或许不能容易地发现重要的属性。
用户偏好可以随时间而发生变化。例如,在观看了包括广播节目和DVD的大量内R后,用户可能发现某个属性比最初认为很重要的那个属性更重要。
根据本发明的一个实施例,可以自动调节每个用户的最佳权重。
图8是示出允许将所述权重自动调节为对用户最佳的权重的推荐系统100的框图。
图8所示的推荐系统100包括终端121、 ^Mt日志数据库122、内容元数据库123、用户偏好数据库125、推荐引擎126、属性权重调节引擎129、属性权重数据库131以及属性权重调节数据库132。可以将图8所示的操作日志数据库122到属性权重调节数据库132构造成包括至少一个服务器,经由网络连接到终端121的推荐设备。
因此,终端121与由操作日志数据库122到属性权重调节翁:据库132所构成的推荐设备分开布置。或者,整个推荐系统100可以使用至少一个计算机来布置。
图8所示的终端121、操作日志数据库122、内容元数据库123以及用户偏好数据库125分别与图l所示的终端21、操作日志数据库22、项
21目元数据库23以及用户偏好数据库25相同,这里省略其详细说明。操作 曰志数据库122由前面参考图2所说明的记录构成。内容元数据库123也 由前面参考图4所说明的记录构成。用户偏好数据库125由前面参考图5 所说明的记录构成。图8没有示出与图1所示的偏好提取引擎24相对应 的功能块。如前面参考图l所述,生成用户偏好数据库125的记录。
图9示出属性权重数据库131。如图9所示,每行上的数据对应着属 性权重数据库131的记录。在这种情形中,属性权重数据库131的每个记 录包括4个字段"成员Id"字段、"属性Id"字段、"权重"字段和"默 i人权重"字段。
"成员Id"字教:存储标识用户的信息,如参考图2所示的^^作曰志 数据库22所说明的。"属性Id"字段存储标识属性的信息,如参考图4 所示的项目元数据库23所说明的。
"权重"字段存储由"成员Id"字段所标识的用户的权重的值。如 上所述,所a重是逐个属性进行设置的,"权重"字段存储与"属性Id" 字段的值相对应的属性的权重的值。
"默认权重"字段存储由"成员Id"字段所标识的用户的权重的默 认值。所述权重的默认值可以是预定的值,也可以是为每个用户预置的值。 在自动调节用户的权重之前,"权重"字段存储"默iUl重"字段处的值。
如图9所示,"成员Id"字段处的值为"1"或"2"的记录^1逐个属 性进行存储的。如所列出的那样,每个记录在"权重"字段处存储"默认 权重,,字段的值,并且用户的权重还没有被自动调节。
图8所示的属性权重调节引擎129基于操作日志数据库122上所存储 的记录来生成属性权重调节数据库132的记录。属性权重调节数据库132 存储用来计算为预定用户进行调节的权重的信息。
图10示出属性权重调节数据库132的例子。参考图10,每行的数据 对应着属性权重调节数据库132的每个记录。属性权重调节数据库132 的每个记录包括4个字段"成员Id"字段、"目标得分"字段、"属性得 分"字段和"更新时间"字段。
图IO所示的"成员Id"字段存储标识用户的信息,如参考图2中的 操作日志数据库22所说明的。
如图IO所示,"目标得分"字段和"属性得分"字段存储如下面所述 那样获得的信息。属性权重调节引擎129检查操作日志数据库122上的每个记录的"曰 志类型"字段中所存储的信息。如前所述,操作日志数据库122的记录中 的"日志类型"字段存储"保留"、"细节"、"好"…。"日志类型"字 段中所存储的信息可以是根据预设方法将所述操作类型(诸如观看项目或 记录项目)转换成的字符串。
属性权重调节引擎129获取要存储在"日志类型"字段中的信息与预 置信息相同的记录,作为用来生成属性权重调节数据库132的记录的记 录。用来生成属性权重调节数据库132的记录的记录是响应于允许对涉及 目标项目的用户的评价进行估计的操作而生成的记录。
例如,如果用户,见看或记录某个项目,那么,该项目就看来是受到了 用户的正面评价。另一方面,如果用户删除了与某个项目相对应的内^lt 据,那么该项目就看来是受到了用户的负面评价。
操作日志数据库122的每个记录的"日志类型"字段中所存储的信息 用按照预设方法所转换成的字符串来表示,从而对涉;sj^作类型的用户评 价进行估计。例如,用户可以,见看或记录某个项目。响应于所述JMt所生 成的记录的"日志类型"字段中所存储的信息为"好"。例如,用户可以 删除某个项目的内^lt据。响应于所述IMt所生成的记录的"日志类型" 字段中所存储的信息为"坏"。
属性权重调节引擎129获取"日志类型"字段中所存储的信息为"好" 或"坏"的记录,作为用来生成属性权重调节数据库132的记录的信息。
响应于这样获取的记录的"项目Id"字段的值,属性权重调节引擎 129识别已用作IMt目标的项目,并4吏推荐引擎126生成该项目的项目偏 好信息。如前所述,项目偏好信息是向量,其所包含的分量的数目与属性 数目同样多,它是基于内容元数据库123的记录而生成的。响应于这样所 获取的记录的"成员Id"字段的值,属性权重调节引擎129识别已执行 所述操作的用户,并基于用户偏好数据库125的记录来生成所述用户的用 户偏好信息。
属性权重调节引擎129使推荐引擎126对所述项目偏好信息和用户偏 好信息执行匹配过程。例如,执行用方程(1)所表达的计算。属性权重 调节引擎129从推荐引擎126获得方程(1)中的IXa'Yal的值,作为属性 "a"的相似度,并生成4^个属性的相似度映射到属性ID的信息。该信 息要被存储到"属性得分"字段中。在图10中的第一条记录的"属性得分"字段中所描述的是 "&1={6265.430664}&6={9245.234375}&7={255.272858}...,,所述第一条
记录的"属性得分"字段的意思是属性ID为"1"的属性其相似度为 "6265.430664",属性ID为"6"的属性其相似度为"9245.234375",以
及属性ID为"7"的属性其相似度为"255.272858"。
基于"日志类型"字段中所存储的信息而确定的相似度的目标值被存 储在"目标得分"字段中。所W目似度的目标值是项目偏好信息和用户偏 好信息之间的目标值,它对应着方程(l)中的sim(X,Y)的值。例如,如 果用来生成属性权重调节数据库132的记录的记录的"日志类型"字段中 所存储的信息为"好",那么,"100.0"就被存储在"目标得分"字段中。 如果用来生成属性权重调节数据库132的记录的记录的"日志类型"字段 中所存储的信息为"坏",那么,"-100.0"就被存储在"目标得分"字段 中。预先确定与"好"相对应的相似度的目标值(这里为"100.0")和与 "坏"相对应的相似度的目标值(这里为"-100.0")。
识别记录生成的日期和时间的信息^L存储在图10所示的"更新时间" 字段中。
以这种方法来生成属性权重调节数据库132的记录。具体说,基于作 为要用来生成属性权重调节数据库132的记录的记录而获取的记录的数 目、操作日志数据库122的记录的输出来确定要生成的属性权重调节数据 库132的记录的数目。
属性权重调节引擎129基于属性权重调节数据库132的记录来调节每 个用户的权重。通过多元回归分析来进行所a重调节,其中所述多元回 归分析使用从属性权重调节数据库132的记录的"目标得分"字段获得的 相似度的目标值(下文中称作目标相似度)以及从属性权重调节数据库 132的记录的"属性得分"字段所获得的每个属性的相似度。
属性权重调节引擎129执行所述多元回归分析,其中所述目标相似度 为因变量,而每个属性的相似度为说明变量(explanatory variable),这 样,属性权重调节引擎129就预测了每个属性的权重的最佳值。
就这样基于每个分量(属性)确定了权重wa。例如,下面的线性方 程由图IO所示的第一条记录得出
100.0=6265.430664 x w"9245.234375 x w6+255.272858 x w7+...
下面的线性方程由图IO所示的第二条记录得出<formula>formula see original document page 25</formula>
上述线性方程基于属性权重调节数据库132的记录中的成员ID为 "1"的记录来产生。通过概括这些方程的左侧和右侧来产生行列式。利 用最小二乘法来确定解(Wh w6, w7,...)。这样就进行了所述多元回归分析。
利用(wb w6, w7,...)来表示所a重。如果属性权重调节数据库132
的记录的数目足够大,那么,也可以确定权重W2、 W3、 W4、 " 。 在获得
了足够大数目的记录的情况下,用户偏好数据库125进行多元回归分析, 其中所述目标相似度为因变量,而每个属性的相似度为说明变量。这样, 属性权重调节引擎129就确定了方程(1)的权重wa。例如,如果用户偏 好信息的100个分量都存在,那么,通过所述多元回归分析来计算 w2、 w3、…、w100。
属性权重调节引擎129确定每个属性的权重的最佳值。基于这样确定 的权重来计算方程(l)以便确定所勤目似度。"日志类型"字段中所存储 的信息为"好"的项目导致与项目偏好信息接近"100.0"的相似度。"日 志类型"字段中所存储的信息为"坏"的项目导致与项目偏好信息接近 "-100.0"的相似度。具体说,用户高度评价的项目的相似度变高,用户 没有高度评价的项目的相似度变低。
属性权重调节引擎129在属性权重数据库131的记录的"权重"字段 中存储上述经调节的每个权重值。这里,属性权重数据库131的记录是逐 个属性地生成的与用户的成员ID相应的记录。
为了识别要推荐给用户的项目,推荐引擎126使用属性权重数据库 131的记录的"权重"字段中所存储的值来计算用户的用户偏好信息和每 个项目的项目偏好信息之间的相似度。在相似度sim(X, Y)的计算中,使 用基于属性权重数据库131的记录所识别的与每个用户的属性相应的权 重的值作为方程(1)中的wa。
推荐引擎126从具有这样计算出来的最高相似度的项目开始推荐预 定数目的项目。例如,推荐引擎126从高相似度到^^目似度识别预定数目 的项目,然后,生成由一列项目构成的推荐列表。然后,推荐引擎126 将所述推荐列表发送到终端121。
这样,推荐系统100向用户推荐项目。由于重要的属性因用户而异, 如果基于是公共固定值的权重来计算所^目似度从而推荐项目,那么,不 一定能推荐出与用户偏好真正匹配的项目。用户偏好是非常抽象的概念,甚至用户也难以表达其自己的偏好。此 夕卜,用户或许不能容易地发现重要的属性,并且用户偏好可以随时间而发 生变化。
根据本发明的一个实施例,基于所述操作日志数据库来估计用户对项
目的评价,并设置属性权重调节数据库132的记录的目标相似度。基于所 述目标相似度和每个属性的相似度来进行多元回归分析。确定每个用户的 属性权重。自动设置对每个用户最佳的权重。
下面参考图11所示的流程图来描述图8所示的推荐系统100的属性 权重调节数据库生成过程。当生成属性权重调节数据库132的记录时就执 行该过程。
在步骤S101中,属性权重调节引擎129设置操作日志数据库122的 分析范围。所述分析范围被设置为表示日期和时间的信息。所述分析范围 内的记录是操作日志数据库122的记录中从指定日期和时间到当前时间 的范围内的那些记录。
在步骤S102中,属性权重调节引擎129获取在步骤S101中所设置 的分析范围内的记录。基于操作日志数据库122的记录的"日志时间"字 段中所描述的信息来确定记录是否在所述分析范围内。
在步骤S103中,属性权重调节引擎129确定在步骤S102中所获得 的记录是否是具有预定日志类型的记录。例如,属性权重调节引擎129 确定记录的"日志类型"字段中所存储的信息是否是要用来生成属性权重 调节数据库132的记录的预定类型。例如,"日志类型"字段中所存储的 信息为"好"或"坏",处理过程前进到步骤S104。
在步骤S104中,属性权重调节引擎129识别记录的成员ID和项目ID。
在步骤S105中,属性权重调节引擎129使推荐引擎126在与步骤S104 中所识别的成员ID相应的用户偏好信息和与所识别的项目ID相应的项 目偏好信息之间执行匹配过程。在这种情形中,计算方程(l)。在步骤 S105中,属性权重调节引擎129从推荐引擎126中获取方程(1)中的 |Xa Yal的值,作为属性"a"的相似度,并生成#^个属性的相似度映射 到属性ID的信息。这样就逐个属性地计算了相似度。如前所述,##个 属性的相似度映射到属性ID的信息是属性权重调节数据库132的记录的 "属性得分"字段中所存储的信息。
26在步骤S106中,属性权重调节引擎129将步骤S105中所获得的信 息映射到相似度的目标值,从而生成如上参考图IO所描述的属性权重调 节数据库132的记录。然后,属性权重调节引擎129将所述记录寄存到属 性权重调节数据库132上。
如上所述,如果用来生成属性权重调节数据库132的记录的记录的 "日志类型"字段中所存储的信息为"好",那么,所述目标相似度就为 "100.0"。另夕卜,如果用来生成属性权重调节数据库132的记录的记录的 "日志类型"字段中所存储的信息为"坏",那么,所述目标相似度就为 "一 100.0"。
如果在步骤S103中确定在步骤S102中所获得的记录不是具有预定 日志类型的记录,那么,就跳过步骤S104-S106。
在步骤S107中,确定是否检查过所述分析范围内的所有记录。如果 在步骤S107中确定在所述分析范围内并非所有的记录都^^检查过,那么, 处理返回步骤S102。
重复步骤S102-S107,直到在步骤S107中确定所述分析范围内的所 有记录都已^fc检查过为止。
这样就执行了属性权重调节数据库生成过程。
下面将参考图12所示的流程图来描述图8所示的推荐系统100的属 性权重计算过程。该过程是对终端121的每个用户以预定的间隔重复地进 行的。具体说,首先对用户A进行所述属性权重计算过程,然后,在距 离第一定时预定天数之后的下一定时再次执行所述过程。在距离所述第二 定时所述预定天数之后再次对用户A执行所述属性权重计算过程,等等。
或者,所述属性权重计算过程可以在用户每次发布执行命令时执行。
在步骤S121中,属性权重调节引擎129识别成员ID。在从现在起要 执行的过程中,计算与步骤S121中所识别的成员ID相应的用户的属性 的权重。
在步骤S122中,属性权重调节引擎129在属性权重调节数据库132 上所存储的记录中检查具有步骤S121中所识别的成员ID的记录。
在步骤S123中,属性权重调节引擎129确定在步骤S122中所检查 的记录的数目是否为N或大于N。这里,N为预定数目,它作为一个阈 值,根据这个阈值来确定存在足够数目的记录来执行多元回归分析。如果在步骤S123中确定为存在N个或更多的记录,那么,处理过程 就前进到步骤S124.
在步骤S124中,属性权重调节引擎129基于在步骤S122中所检查 的属性权重调节数据库132的记录来调节用户的权重。所i^L重调节基于 属性权重调节数据库132的记录的"目标得分"字段中的目标相似度和属 性权重调节数据库132的记录的"属性得分"字段中的每个属性的相似度 通过多元回归分析来进行。
在步骤S125中,属性权重调节引擎129将步骤S124所产生的权重 识别为步骤S121中所识别的用户的每个属性的权重。
在步骤S126中,属性权重调节引擎129更新属性权重数据库131以 反映在步骤S125中所识别的用户的属性权重。具体说,从图9所示的属 性权重数据库131的记录中获取具有步骤S121中所识别的成员ID的记 录,并且检查这些记录的"属性Id"字段的值。在步骤S125中所识别的 用户的属性权重将"属性Id"字段中的值表示该属性的记录的"权重" 字段中的值覆写。属性的数目等于用户偏好信息的分量的数目。例如,如 果有100个用户偏好信息分量,那么,属性权重数据库131的100个记录 的"权重"字段的值就 _写。
在步骤S126之后,属性权重调节引擎129在步骤S127中执行属性 权重调节数据库管理过程。在所述属性权重调节数据库管理过程中,不必 要的记录被从属性权重调节数据库132中删除。后面将参考图13-15描述 所述属性权重调节^t据库管理过程的细节。
这样就执行了属性权重计算过程。
根据本发明的一个实施例,基于每个用户的操作日志数据库来估计项 目的用户评价,并设置属性权重调节数据库132的记录的目标相似度,如 前面参考图ll所说明的。如前面参考图12所说明的,使用所述目标相似 度和每个属性的相似度来进行多元回归分析。这样就确定了用户的属性权 重。自动设置对每个用户最佳的权重。
下面将参考图13的流程图来描述图12的步骤S127中的属性权重调 节数据库管理过程。
在步骤S141中,属性权重调节引擎129在属性权重调节lt据库132 的记录中检查具有步骤S121中所识别的成员ID的每个记录的数据和生 成时间。例如,属性权重调节引擎129检查识别图IO所示的"更新时间"字段处的日期和时间的信息。
在步骤S142中,属性权重调节引擎129按步骤S141中所检查的生 成日期和时间的顺序从旧到新来识别记录的X。/。。在这种情形中,识别具 有步骤S121中所识别的成员ID的记录的总数的X% (例如,50%)。 X 的值^1预定的。
在步骤S143中,属性权重调节引擎129删除在步骤S142中所识别 的属性权重调节数据库132的记录。
这样就执行了属性权重调节数据库管理过程。通过删除旧的记录,能 够调节用户的每个属性的权重,以响应用户偏好的变化。
属性权重调节数据库132中的记录基于操作日志数据库122的记录来 生成。响应于用户在终端121上所进行的旧操作而生成的属性权重调节数 据库132的记录具有旧的生成日期和时间。响应于用户在终端121上所进 行的新^作而生成的属性权重调节数据库132的记录具有新的生成曰期 和时间。
用户的操作在对用户偏好的重要性上彼此不同。例如,用户可以防止 给定内容的数据被删除,或者,可以将给定内容寄存在"最爱"文件夹中。 这种操作可以被理解为用户对内容(项目)的正面评价,表明对该内容的 强烈偏好。这种操作清楚地显示了正面评价。
尽管用户对给定内容的数据进行再现和,赠表明了对该内容(项目) 的正面评价,但这种操作不一定确保用户对该内容有强烈偏好。用户可能 简单地看一下所记录内容的数据,只是为了检查的目的。
因此,用户的操作在对用户偏好的重要性上是彼此不同的。如果不注 意用户操作的类型就自动删除了旧数据,那么,可能就不能在认识到用户 偏好的情况下恰当地进行权重调节。
在图12的步骤S127中的属性权重调节数据库管理过程中,也考虑操 作的类型。在图12的步骤S127中的属性权重调节数据库管理过程中如下 述那样考虑用户操作的类型。
图14示出属性权重调节数据库132的另一个例子。每行上的数据对 应着属性权重调节数据库132的每个记录,如前面参考图10所说明的。 属性权重调节数据库132的每个记录包括5个字段"成员Id"字段、"目 标得分"字段、"属性得分"字段、"更新时间"字段和"允许使用数"字 段。图14中"成员Id"字段、"目标得分"字段、"属性得分"字段和"更 新时间"字段与图10中的对应字段相同,这里省略其说明。
图14中的"允许使用数"字段存储表示在属性权重计算过程中记录 可以使用多少次的数字值。所述"允许使用数"字段中所存储的是在生成 记录时响应于由操作日志数据库122的记录标识的操作类型来确定的值。
如果用户进行清楚地表明用户对项目的正面评价的操作,那么,操作 日志数据库122中的记录的"日志类型"字段中所存储的信息为"好3"。 例如,如果用户进行暗示出用户对所述项目的正面评价的操作,那么,所 述"日志类型"字段中所存储的信息可以为"好2"或"好1"。
如果用户删除了与某个项目相应的内容的数据,或者如果用户i^行清 楚地表明用户的负面评价的操作,那么,所述"日志类型"字段中所存储 的信息为"坏3"。如果用户进行暗示出用户的负面评价的操作,那么, 所述"日志类型"字段中所存储的信息可以为"坏2"或"坏1"。
当生成属性权重调节数据库132的记录时,操作日志数据库122的记 录的"日志类型"字段中所存储的信息可以为"好3"。在这种情形中,"3" 被存储在"允许使用数"字段中。当生成属性权重调节数据库132的记录 时,操作日志数据库122的记录的"日志类型"字段中所存储的信息可以 为"好2"或"好1"。在这种情形中,"2"或'T,被存储在"允许使用 数"字段中。
当生成属性权重调节数据库132的记录时,操作日志数据库122的记 录的"日志类型"字段中所存储的信息可以为"坏3"。在这种情形中,"3" 被存储在"允许使用数"字段中。类似地,当生成属性权重调节数据库 132的记录时,操作日志数据库122的记录的"曰志类型"字段中所存储 的信息可以为"坏2"或"坏1"。在这种情形中,"2"或"1"被存储在 "允许使用数"字段中。
只为了i兌明的目的描述操作日志数据库122的记录的"日志类型"字 段中所存储的信息"好3"、"好2"、"好1"、"坏3"、"坏2"和"坏1"。 实际存储的信息可以是不同的。重要的是,"允许使用数"字段中所存储 的值由操作类型来确定。
如果在属性权重调节数据库管理过程中考虑操作类型,那么,如图 14所示来构造属性权重调节数据库132。使用图14所示的属性权重调节 数据库132来进行图11和图12所示的过程。下面参考图15的流程图来描述图12的步骤S127中的属性权重调节 数据库管理过程的另一个例子。在所述属性权重调节数据库管理过程中, 考虑操作类型。
在步骤S161中,属性权重调节引擎129在属性权重调节数据库132 的记录中更新具有步骤121中所识别的成员ID的每个记录的允许使用数。 例如,将具有步骤S121中所识别的成员ID的所有记录的每个记录的如 图14所示的"允许使用数"字段中所存储的值减少"1"。
在步骤S162中,属性权重调节引擎129识别在步骤S161中所更新 的允许使用数为"0"的记录。例如,在图14的第三行中的记录,其当前 的允许使用数为值"2",而在步骤S161中所进行的更新使所述允许使用 数的值成为"1"。例如,在图14所示的第四行中的记录,其当前的允许 使用数为值"3",而在步骤S161中所进行的更新使所述允许使用数的值 成为"2"。
在第二、第五和第六行的记录,其当前的允许使用数为值"1",而在 步骤S161中所进行的更新使所述允许使用数的值成为"0"。在步骤S162 中,所述第二、第五和第六行的记录被识别为具有允许使用数"0"。
在步骤S163中,属性权重调节引擎129删除在步骤S162中所识别 的允许使用数为"0"的记录。
这样就执行了属性权重调节数据库管理过程。由于是否删除记录M 于响应于操作类型而确定的允许使用数的值来确定的,所以,在属性权重
调节数据库管理过程中考虑^Mt类型。这样就构造出恰当地反映了用户偏 好的属性权重调节数据库132。恰当地对用户的每个属性的权重进行了调节。
上述一系列过程步骤可以使用硬件或软件来执行。如果该一系列过程
步骤使用软件来执行,那么,可以从记录^h质或经由网络将形成所述软件
的程序安装到包含在特定硬件中的计算机上,或安装在诸如图16所示的 安装有各种程序、能够执行各种功能的通用个人计算机700的计算机上。
图16中的中央处理单元(CPU) 701在只读存储器(ROM) 702上 所存储的程序或在从存储单元708加载到随M取存储器(RAM) 703 的程序的控制下执行各种处理。RAM 703也存储CPU 701在执行所述过 程时所使用的数据。
CPU 701、 ROM 702和RAM 703经由总线704彼此互联。输入-输200
出接口 705连接到总线704。
输入-输出接口 705还连接到包括M、鼠标等的输入单元706,包 括诸如阴极射线管(CRT)或液晶显示器(LCD)的显示器、扬声器等 的输出单元707,包括硬盘等的存储单元708,包括诸如调制解调器或LAN 卡等网络接口的通信单元709。通信单元709经由包括因特网的网,行 通信过程。
需要的话,将驱动器710连接到输入-输出接口 705。可移动介质711 (诸如磁盘、光盘、磁光盘或半导*储器)被恰当地加载到驱动器710 上。从可移动介质711读取的计算M序被安装在存储单元708上。
如果上述过程步骤使用软件来执行,那么,所述软件的计算;^序从 诸如因特网的网络或从诸如可移动介质711的记录介质进行安装。
所述记录介质包括加载了程序的可移动介质711,该介质与图16所 示的计算机分开提供,以将计算M序分发给用户。可移动介质711可以 是磁盘(诸如软盘(注册商标))、光盘(诸如致密盘只读存储器 (CD-ROM)、或数字通用盘(DVD))、磁光盘(MD (Mini盘)(注册 商标))以及半导体存储器之一。所述记录介质也包括ROM 702以及存 储单元708中所包含的^it,这些记录介质中每种介质都被置于所述计算 机中并在其上存储有所述计算M序。
所述计算机程序可以按本说明书中所描述的过程步骤的时间顺序来 执行,也可以并行执行,或以任啊时序来执行。
本申请包含了与2008年9月8日在日本专利局提交的日本优先权专 利申请JP2008-229313中所公开的主题相关的主题,其全部内容通过引用 包含于此。
本领域技术人员应该理解可以依据设计要求和其它因素进行各种变 型、结合、子结合和改变,只要它们在所附权利要求书或其等同物得范围 内即可。
权利要求
1.一种推荐设备,包括调节信息存储装置,用于生成并存储调节信息,所述调节信息把通过将用户偏好信息中的分量与项目偏好信息中的分量之间的分量相似度乘上权重系数而得到的值映射到响应于用户对项目进行的操作的类型而确定的评价值的目标,所述用户偏好信息表示所述用户的偏好,并且被构造成包含多个分量的向量,所述项目偏好信息基于作为推荐目标的每个项目的元信息而生成,并且包含数目与所述用户偏好信息的分量数目相同的分量;多元回归分析装置,用于基于多个调节信息通过多元回归分析逐个用户地计算每个权重系数,所述用户偏好信息的每个分量都乘上各自的权重系数;权重系数存储装置,用于逐个用户地存储所计算的权重系数,在所述评价值的计算中,所述用户偏好信息的每个分量都乘上各自的计算出的权重系数;以及推荐项目识别装置,用于基于所述用户偏好信息和所述项目偏好信息的每个分量以及基于与所述分量相应的所述权重系数计算出的评价值来识别要向所述用户推荐的项目。
2. 根据权利要求1所述的推荐设备,其中,在预定时间段内生成的 调节信息作为所述多元回归分析的目标。
3. 根据权利要求2所述的推荐设备,其中,在每个预定的周期生成 并存储所述调节信息,其中,逐个用户地计算所a重系数,并且逐个用 户*储计算出的权重系数,在所述评价值的计算中,所述用户偏好信息 的每个分量都乘上各自的计算出的权重系数。
4. 根据权利要求1所述的推荐设备,还包括调节信息删除装置,用 于删除在所述多元回归分析中使用的所述调节信息。
5. 根据权利要求4所述的推荐设备,其中,所述调节信息删除装置 按照从旧到新的生成顺序删除预定百分比的调节信息。
6. 根据权利要求4所述的推荐设备,其中,所述调节信息包括由所 述用户操作的类型所确定的4吏用数,以及所述调节信息删除装置删除在所述多元回归分析中使用了所述使用数的所述调节信息。
7. —种推荐方法,包括步骤生成并存储调节信息,所述调节信息把通过将用户偏好信息中的分量 与项目偏好信息中的分量之间的分量相似度乘上权重系数而得到的值映 射到响应于用户对项目进行的^作的类型而确定的评价值的目标,所述用 户偏好信息表示所述用户的偏好,并且被构造成包含多个分量的向量,所 述项目偏好信息基于作为推荐目标的每个项目的元信息而生成,并且包含 数目与所述用户偏好信息的分量数目相同的分量;基于多个调节信息通过多元回归分析逐个用户地计算每个权重系数, 所述用户偏好信息的每个分量都乘上各自的权重系数;逐个用户M储所计算出的权重系数,在所述评价值的计算中,所述 用户偏好信息的每个分量都乘上各自的计算出的权重系数;以及基于所述用户偏好信息和所述项目偏好信息的每个分量以及基于与 所述分量相应的所述权重系数计算出的所述评价值来识别要向所述用户 推荐的项目。
8. —种计算M序,用于使计算机执行步骤生成并存储调节信息,所述调节信息把通过将用户偏好信息中的分量 与项目偏好信息中的分量之间的分量相似度乘上权重系数而得到的值映 射到响应于用户对项目进行的^Mt的类型而确定的评价值的目标,所述用 户偏好信息表示所述用户的偏好,并且被构造成包含多个分量的向量,所 述项目偏好信息基于作为推荐目标的每个项目的元信息而生成,并且包含 数目与所述用户偏好信息的分量数目相同的分量;基于多个调节信息通过多元回归分析逐个用户地计算每个权重系数, 所述用户偏好信息的每个分量都乘上各自的权重系数;逐个用户地存储所计算出的权重系数,在所述评价值的计算中,所述 用户偏好信息的每个分量都乘上各自的计算出的权重系数;以及基于所述用户偏好信息和所述项目偏好信息的每个分量以及基于与 所述分量相应的所述权重系数计算出的所述评价值来识别要向所述用户 推荐的项目。
9. 一种记录介质,存储根据权利要求8所述的计算机程序。
10. —种推荐i殳备,包括调节信息存储单元,其生成并存储调节信息,所述调节信息把通过将 用户偏好信息中的分量与项目偏好信息中的分量之间的分量相似度乘上的评价值的目标,所述用户偏好信息表示所述用户的偏好,并且被构造成 包含多个分量的向量,所述项目偏好信息基于作为推荐目标的每个项目的 元信息而生成,并且包含与所述用户偏好信息的分量数目相同数目的分量;多元回归分析单元,其基于多个调节信息通过多元回归分析逐个用户 地计算每个权重系数,所述用户偏好信息的每个分量都乘上各自的权重系数;权重系数存储单元,其逐个用户地存储所计算的权重系数,在所述评 价值的计算中,所述用户偏好信息的每个分量都乘上各自的计算出的权重 系数;以及推荐项目识别单元,其基于所述用户偏好信息和所述项目偏好信息的 每个分量以及基于与所述分量相应的所述权重系数计算出的评价值来识 別要向所述用户推荐的项目。
全文摘要
一种用于内容推荐的设备、方法和计算机程序以及记录介质。属性权重调节引擎根据属性权重调节数据库的记录中的具有所识别的成员ID的记录来调节用户的权重。基于所述属性权重调节数据库的记录所产生的目标相似度和所述属性权重调节数据库的每个属性的相似度通过多元回归分析来进行所述权重调节。所得到的权重被识别为所识别的用户的每个属性的权重。为了反映所述用户的每个属性的权重,更新属性权重数据库,并从所述属性权重调节数据库中删除不想要的记录。
文档编号G06F17/30GK101674458SQ20091017179
公开日2010年3月17日 申请日期2009年9月8日 优先权日2008年9月8日
发明者上前田直树, 增田弘之, 萩原丈博 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1