需要帮助和建议。设置了一个带有mahout集群的5个hadoop
我有两组数据:
表1:id1,地址1
表2:id2,address2
如何使用mahout查找相似性评分,以便比较两个文件中的地址,以便得到以下结果?
结果:地址1,地址2,得分
完成了:
将文件合并到一个csv
转换为序列文件:seqdirectory,
不完全确定在此之后去哪里。推荐或聚类。如何使用jaccard索引等需要指针和示例。
答案 0 :(得分:1)
虽然您可以将通用文本相似度算法应用于地址,但我很确定它会产生不良结果,因为任何通用算法都不会解释拼写错误。 “Main St”将与“Main Dr”类似“Main Street”。 “Apt 203”和“#203”无关。
那就是 - 我不认为矢量化表示是这里良好的模糊匹配算法的基础。因此Mahout将无法直接使用,但可能会提供一些基础设施来构建您自己的非矢量数据聚类。
在选择工具之前,我会备份并定义您的算法。
答案 1 :(得分:0)
使用Mahout进行地址相似可能太多了。您是否考虑使用像SimHash这样简单的算法?以下是一个很棒的教程。用于SimHash的Java库和用于查找Shingles等的Java库可在Google代码中找到。
http://matpalm.com/resemblance/simhash/
你会在这里找到lib