我有一个场景,有一个商店,有包括英语在内的不同语言的视频内容。我想使用TFIDF给出一个商品对商品的推荐,但我被停用词搞糊涂了。它将如何在不同的语言中表现?stop_word应该是什么?
tftdf = TfidfVectorizer()
count_matrix = tftdf.fit_transform(df["combined_features"])
cosine_sim = cosine_similarity(count_matrix)发布于 2020-04-23 21:47:36
Stop Words是一组常用的单词,它们给文本增加了更多的噪音,而不是有用的信息。英语中常见的停用词有:a、the、in、an,标点符号也可以是停用词。
一些图书馆很糟糕,因为NLTK已经建立了一套针对英语的停用词。Example
import nltk
from nltk.corpus import stopwords
set(stopwords.words('english'))您还可以根据正在构建的NLP应用程序的上下文自定义停用词列表。
每种语言都会有一组不同的停用词,一组英文停用词看起来像这样:
english_stop_words = ["the","a","an","it","by","or",...]
而葡萄牙语停用词列表将如下所示:
portuguse_stop_words = ["a", "o","um","uma","pelo", "pela","ou",...]
一组法语停用词可能是:
french_stop_words = ["le","la", "à","alors","ce",...]
因此,对于每种语言,您都需要该语言特定一组停用词。不一定是从一种语言到另一种语言的停用词集合的直接翻译。
同样,这一切都是与应用程序的目的相关的。停用词在自然语言处理流水线的预处理步骤中用作降噪步骤。
Here is a website that has a list of stop words for several languages。
祝你好运:)
https://stackoverflow.com/questions/61387633
复制相似问题