我试图通过使用一些机器学习算法自动生成关键字。在这个过程中,在结果中,我还看到一些不需要的关键字也生成了,现在我需要从算法上从输出列中删除不需要的/冗余的单词。[不需要的关键字是什么,但不存在于输入列中,但仍然在输出列中生成的单词]下面是一个例子,我试图通过引用“query_text”列来生成关键字。结果存储在“自动生成的关键字”列中。但是你可以看到,有几个关键字是不必要的提取(“钻石”和“戒指”),我用红色突出显示了相同的(分别在第1行和第3行)。现在在最后一列(更正的关键词)中,我只给出了必要的单词。
我如何通过比较结果(自动生成的关键字)和输入(query_text)在算法上做到这一点。
S.No query_text auto generated keywords corrected keywords
1 I want ring diamond|ring ring
2 I want wedding band band|wedding band|wedding
3 I look for sapphire collection ring|sapphire sapphire
4 I want diamond earring diamond|earring diamond|earring
5 I am looking for stackable ring ring|stackable ring|stackable
6 I need gold bracelet bracelet|gold bracelet|gold
7 I look for gold ring gold|ring gold|ring
8 I need sapphire ring ring|sapphire ring|sapphire
带有突出显示的额外单词的数据:
2条答案
按热度按时间6tr1vspr1#
你需要在
query
/auto generated words
(zip
)对上使用列表解析,并使用set
来进行有效的成员测试:输出量:
mm5n2pyu2#
我用了一个不那么优雅的方法来解决这个问题。
我首先清理了每行自动生成的关键字,|和中间的空格,并使用函数将它们转换为列表。
然后检查自动生成的关键字中的每个单词是否在query_text中。
这是Result