Udacity|Udacity 数据分析进阶课程笔记L41(文本学习)

  1. 通过练习了解词袋及其属性:
    • 无序
    • 文本长度影响算法结果
    • 对复合短语处理能力不足
  2. sklearn中的使用
    • CountVecterizer即可理解为词袋
from sklearn.feature_exaction import CountVectorizer vectorizer = CountVectorizer() string1 = "some words ..." string1 = "some another words ..." string1 = "some more words ..." words_list = [string1, string2, string3] bag_of_words = vectorize.fit( words_list ) bag_of_words = vectorize.transform( words_list )

  1. 停止词stop words指文本中低信息量但出现频率很高的词,一般需要预先做剔除处理。
    • 使用NLTK包处理停止词
>>> from nltk.corpus import stopwords >>> import nltk >>> nltk.download()# For the first time use >>> sw = stopwords.words("english")

  1. 词干化:一般先进行词干化,再进行词袋提取
from nltk.stem.snowball import SnowballStemmer stemmer = SnowballStemmer("english") stemmer.stem("responsiveness") # u'respons'

  1. 由词频确定的权重Td-Idf
    Udacity|Udacity 数据分析进阶课程笔记L41(文本学习)
    文章图片
    Tf-Idf Representation
  2. 文本学习迷你项目。

    推荐阅读