机器学习这四个东西,你知道吗?

分类变量特征提取

分类数据的独热编码方法,分类变量特征提取(One-of-K or One-Hot Encoding):
通过二进制数来表示每个解释变量的特征

from sklearn.feature_extraction import DictVectorizer
onhot_encoder = DictVectorizer()
instances=[{'city':'New York'},{'city':'San Francisco'},{'city':'Chapel Hill'}]
print (onhot_encoder.fit_transform(instances).toarray())


[[0. 1. 0.]
 [0. 0. 1.]
 [1. 0. 0.]]

文字特征提取-词库模型

文字模型化最常用方法,可以看成是独热编码的一种扩展,它为每个单词设值一个特征值。依据是用类似单词的文章意思也差不多。可以通过有限的编码信息实现有效的文档分类和检索。

CountVectorizer 类会将文档全部转换成小写,然后将文档词块化(tokenize).文档词块化是把句子分割成词块(token)或有意义的字母序列的过程。词块大多是单词,但是他们也可能是一些短语,如标点符号和词缀。

CountVectorizer类通过正则表达式用空格分割句子,然后抽取长度大于等于2的字母序列。

 from sklearn.feature_extraction.text import CountVectorizer
corpus = [
   'UNC played Duke in basketball',
  'Duke lost the basketball game',
  'I ate a sandwich'
 ]
 vectorizer = CountVectorizer()
 print (vectorizer.fit_transform(corpus).todense())
print (vectorizer.vocabulary_)

猜你喜欢

转载自blog.csdn.net/weixin_44510615/article/details/105200978
今日推荐