【问题标题】:How to select sentences similar to my sentence by crawling entire website?如何通过爬取整个网站来选择与我的句子相似的句子?
【发布时间】:2018-05-11 06:48:51
【问题描述】:

如果我给一个句子,如何将所有相似的句子返回给它?
例如:
面试需要多长时间?
相似的句子应该是
1.面试持续多长时间。
2.面试时间。

如何做到这一点?
我正在考虑的一种方法是爬取 30 到 40 个公司职业网站的常见问题页面,并使用 doc2vec 嵌入问题,我会将所有相似的向量保存在一个集群中。

还有比这更好的方法吗?

【问题讨论】:

    标签: nlp artificial-intelligence chatbot word2vec doc2vec


    【解决方案1】:

    我认为它的输出将是随机的。为什么不在这样的几十个输入上手动训练它。结果可能很快就会很好。

    【讨论】:

      【解决方案2】:

      一旦你有了词向量——要么是从其他地方重复使用的通用词向量,要么(更好)一些训练了我们你的文本域的词向量——你还可以使用“Word Mover's Distance”(WMD)来评估句子(或其他短句)的相似性文)。一些演示表明,即使使用非常不同的词,它也能很好地按相似的含义对句子进行排序。

      但是,请注意,与为每个文本提供单个向量(如 Doc2Vec)的简单向量距离方法相比,WMD 的计算成本相对较高。因此,它可能只适用于较小的文本集,或者可以专用大量计算能力,或者额外的首次优化限制了要进行的成对 WMD 计算的数量。

      (还有另一个指标可能更便宜地接近 WMD 性能,称为“软余弦相似度”。WMD 和软余弦相似度计算都可以在 Python gensim 包的最新版本中使用,但它们还没有完全优化也没有明确描述最佳实践。)

      【讨论】:

        猜你喜欢
        • 2021-05-23
        • 1970-01-01
        • 2020-09-25
        • 2016-08-14
        • 2020-08-10
        • 2020-07-11
        • 2016-07-09
        • 1970-01-01
        • 2015-01-23
        相关资源
        最近更新 更多