【发布时间】:2017-09-26 14:48:39
【问题描述】:
假设我们有两组 URL:源池和目标池。源池基本上是网站上存在的 URL 的平面列表,而目标池包含同一网站的重制版本的所有 URL。所以对于源池中的大部分条目,目标池中应该有对应的、相似的条目。
我们希望通过将 目标池 中的一个 URL 与 源池 中的每个 URL 匹配来创建重定向映射。同一个target可以映射到多个sources。
示例源池:
/books/faust
/books/romeo-and-juliet
/ebooks/from-zero-to-hero
/blog
/about-us
/deprecated-page
示例目标池:
/books/goethe/faust
/books/shakespeare/romeo-and-juliet
/ebooks/random-wannabe/from-zero-to-hero
/blog
/about-us
/newly-added-page
注意:您的答案不应过于具体到所提供的示例,例如添加作者命名空间。相反,假设只有两组基于字符串的pretty urls,具有不同的重叠/相似性。我们正在寻找一种通用的解决方案,根据两个 url 引用同一事物的可能性来创建重定向映射。
那么问题来了:
- 是否有针对此应用程序的现成解决方案(用于网站迁移的重定向),获取两个 url 列表并返回一个映射?
- 如果不是,哪些通用算法适合从列表中选出一个最有可能的候选人?
匹配概率的附加输出将有助于稍后手动检查列表。
【问题讨论】:
标签: algorithm machine-learning statistics string-matching fuzzy-search