为了练习特征提取,我将使用一个非常有名的数据集,叫做20 Newsgroups;这个数据集一般用来文本分类。
1.分析数据内容
查看目录结构和数据结构
val sc = new SparkContext("local[2]","TF-IDF") val path = "data/20news-bydate-train/*" val rdd = sc.wholeTextFiles(path) val text = rdd.map{ case (file,text)=> text} println(text.count())
2.应用基本的分词方法
切分每个文档的原始内容为多个单词,组成集合,下面实现简单的空格分词。及时相对于较小的文本集,不同单词的个数(也就是特征向量的维度)也可能非常高。
val newsgroups = rdd.map{ case (file,text)=> file.split("/").takeRight(2).head} val countByGroup = newsgroups.map(n => (n,1)).reduceByKey(_+_).collect.sortBy(-_._2).mkString("

本文档通过20 Newsgroups数据集介绍如何进行特征提取,涉及内容包括分词、去除标点符号、数字、停用词,以及应用TF-IDF模型训练并分析权重。
最低0.47元/天 解锁文章
328

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



