词向量的唯一化
最近duoshuo社会化评论崩溃了,上千条评论就这么没了,各种手段恢复无果。只能怪我太懒,不爱经常做备份。果断将博客评论迅速转移到disqus,希望以后不会有事(后来还是有事了,所有评论都没了,额)。
表意一致问题
言归正传,最近和工程师讨论词向量表征商品特征的思路时,遇到一个很有意思的现象:一个商品很可能标记了
- 维达纸巾
- 纸巾维达
这两个特征的意义实际一致,从权重角度考虑,应该做合并处理。工程师给了一个 Python 版本,我也忍不住给了一个 R 版本,大家可以看看使用 match 索引和 duplicated 函数的作用。
1 | txt <- scan(textConnection(' |
思路很简单,将所有的字排序之后,再做raw vectors拼接,如果一样,则认为是同样的表意。最后通过索引返回同样表意的原始词汇。这段代码百万级别重复词汇是完全可以处理,且性能可靠。
益辉的建议
上述代码可能确实存在误分的风险,需做完全切割:
1 | m = lapply(strsplit(txt, ''), function(x) { |