TFIDF和多语种文本分类

我有一个场景,有一个商店,里面有不同语言的视频内容,包括英文。我想用TFIDF给一个项目对项目的推荐,但是我对停字很困惑。在多元化的语言中,它的表现如何?还有stop_word应该是什么?

tftdf = TfidfVectorizer()
count_matrix = tftdf.fit_transform(df["combined_features"])
cosine_sim = cosine_similarity(count_matrix)

解决方案:

歇后语 是一组常用的词,它们宁可给文本增加更多的噪音,而不是有用的信息。英语中常用的停顿词有 a, the, in, an,标点符号也可以是停顿词。

有些库很烂,因为NLTK已经有了一套既定的英语停顿词。例如:

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",...]

所以对于每一种语言,你都需要一个特定的停顿词集,用于该语言。不一定要从一种语言的停顿词集直接翻译成另一种语言。

同样,这都是相对于你的应用目的而言的。停止词在自然语言处理流水线的预处理步骤中作为降噪步骤使用。

这里是一个网站,它提供了几种语言的停顿词列表.

祝你好运:)

给TA打赏
共{{data.count}}人
人已打赏
未分类

试图获取非对象的属性'product_id'。

2022-9-8 0:55:16

未分类

Codeigniter - 输入数据保存在多个数组和db表中

2022-9-8 0:55:18

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索