machine-learning - Quora Question Pairs 挑战,使用二元交叉熵损失来预测两个问题是否问同一件事以评估预测

标签 machine-learning nlp information-retrieval tf-idf cosine-similarity

我有一个 csv 文件,其中包含来自 Quora 问题对挑战赛的问题对。对于每一对都有一个相应的标签,指定问题是否相同。我想创建一种方法,以便如果我们有未知的问题对,我可以回答他们是否问相同的问题。结果的准确性应使用二元交叉熵损失来确定。

这是我必须做的一个关于信息检索类(class)的项目。问题是,到目前为止我发现的所有解决方案都包括机器学习(例如神经网络),而我们在本类(class)中还没有学到如何使用任何机器学习模型。如何在不使用任何机器学习的情况下解决这个问题?

我考虑过清理数据(例如停用词重新排序和标点符号删除),计算 tf-idf,然后在两对之间应用余弦相似度。像这样,我可以在不使用标签的情况下找到已经给出的两个问题的相似程度。但是,如何利用标签来发挥我的优势,并在没有机器学习的情况下预测两个未知问题对之间的相似性,是否有一种我缺少的简单方法?

最佳答案

您需要使用机器学习模型来解决此问题。您已经完成了很好的清理部分,并使用 tf-idf 来获取该单词在给定问题中出现的次数。您还可以尝试 word-2vec 模型,它也会显示单词之间的语义。事实上 quora 使用随机森林作为模型来预测两个问题之间的相似性,您可以查看此链接以获取更多详细信息。 https://engineering.quora.com/Semantic-Question-Matching-with-Deep-Learning

现在您的解决方案过于简单,尽管一开始就很好。 但如果你想要更高的准确性,我建议你了解逻辑回归、决策树等模型的基本知识来解决这个问题。

关于machine-learning - Quora Question Pairs 挑战,使用二元交叉熵损失来预测两个问题是否问同一件事以评估预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54136855/

相关文章:

python - python 中的快速/优化 N-gram 实现

matlab - 通过Matlab中的AdaboostM1进行高功能选择,以降低计算复杂性

machine-learning - 逻辑回归对于线性可分离数据更好吗?

artificial-intelligence - 脉冲(尖峰)神经网络是否优于循环神经网络?

nlp - 将一个有多个主语的复合句分成多个各有一个主语的句子?

python - 在倒排索引中搜索普通查询

ruby - 给定大量 URL,将 URL 分组为模式或正则表达式的最佳数据挖掘方法是什么?

r - 使用插入符号库修剪树返回复杂的树

python - Pandas 列表中的词频

python - 为什么 Tfidfvectorizer 中的 token_pattern 参数不能与 scikit learn 一起使用?