1
tioover 2012-05-30 22:11:27 +08:00
可能没有看懂……而且我是小小
可不可以这样,keyword单独列个表,关联object和item,在item加入的时候就将关联写入keyword表? |
2
Ariagle OP 刚才在推上收获了一个方法:将 keyword 当作字典,对 title 进行分词,然后就能反向去搜索 object 的 keyword 了。感谢 @zhoushuqun 。
@tioover 楼顶的问题就是在于没法根据 item 来找到 item 和 keyword 的对应关系,所以当有新 item 加入时就不知怎么去操作 keyword 表了。 |
3
tioover 2012-05-30 22:21:51 +08:00
@Ariagle 唔这样啊……或许可以把所有keyword放在内存里面然后在新item加入以后一个一个试着匹配? 不过还是分词的方法好点吧
|
4
Ariagle OP @tioover 嗯,你这个实质上就是楼顶的方法,有新 item 时就一个个地轮 object (即 keyword ),匹配的话就写入关系表。不过效率很低就是了…
|
5
benzhe 2012-05-30 22:35:20 +08:00
tilte 分词入一个新表,并建立跟 item 的关系,同时也建立 tilte 跟 keyword 的关系,应该可以这样吧。
其实最好把原来的数据表贴出来再研究 |
6
Ariagle OP 说白了就是萌否的“条目-资源”问题 http://moefou.org/tv/1206/resources
现在只能通过 用户->条目->资源 这种方向来给用户显示内容,应该属于“拉”模式,而这种方法目前遇到了不少瓶颈。 若要改成 资源->条目->用户 这种“推”模式,就面临楼顶提到的问题了。 |
7
road2stat 2012-05-30 23:11:49 +08:00
一个简单的想法是,对 title 分词,然后利用快速 k-NN 算法计算 title 的分词结果与各 item 的 keyword 向量之间的余弦距离,得到排序结果。
这样比暴力匹配可能更精细一些,速度不会太慢,也可以得到双向的关系。不过如果数据比较稀疏,可能准确率会受到影响。 |
8
Ariagle OP @road2stat 应该用不着这样计算相似度了吧,只要分词结果和 keyword 完全匹配,就可认定关系了。分词完后使用 sphinx 之类的搜索引擎应该就能比较快地找到结果。
|
9
road2stat 2012-05-31 02:50:58 +08:00
嗯,分词基本上是最大的问题,之后的处理比较自由。
|