一、词袋
简单来说词袋就是一种非常简单的文本数据的特征提取方法。他可以展现一篇预料出现的词语种类和数量,它本身比较简单,也有稀疏性和语义性的问题,但是比较适合初步了解NLP。
二、背景和预料数据
取自于https://www.kaggle.com/c/word2vec-nlp-tutorial/data,Kaggle中的一个赛题。
数据集由5万条IMDB电影评论组成,专门用于情感分析。评论的情绪是二元的,即IMDB评分< 5的情绪得分为0,评分>=7的情绪得分为1。没有一部电影的评论超过30条。

id - 唯一ID,标记不同评论
sentiment - 情感标签
review - 影评内容
三、数据的预处理
首先根据文本类型,要去除html标签,比如:br

接下来,标点对于我们分析情感是没有用,所以也要去掉。之后因为全是英文语料,所以分词会比中文语料简单。再去掉对情感分析没有用的停用词,将处理数据后的单词重组就行了。
df = pd.read_csv('data/labeledTrainData.tsv', sep='\t', escapechar='\\')
(1)去除html标签
example = BeautifulSoup(df['review'][1000], 'html.parser').get_text()
print(example)

(2)去除标点符号
example_letters = re.sub(r'[^a-zA-Z]', ' ', example)
print(example_letters)

(3)分词
words = example_letters.

文章介绍了词袋模型作为文本特征提取方法在自然语言处理(NLP)中的简单应用,特别是在Kaggle的情感分析数据集上。首先,通过预处理步骤如去除HTML标签、标点符号和停用词来清洗数据。然后,利用CountVectorizer构建词频矩阵,并选择5000个高频词作为特征。最后,使用逻辑斯蒂回归模型对词袋模型进行训练,评估了在测试集上的性能。
最低0.47元/天 解锁文章
1042

被折叠的 条评论
为什么被折叠?



