zoukankan      html  css  js  c++  java
  • 文本分类问题相关原理知识

    1 词袋模型

    from sklearn import feature_extraction
    f = feature_extraction.text.CountVectorizer()
    CountVectorizer将文本中的词转化为词频矩阵,数值为0/1,是关键字则为1。
    from sklearn.feature_extraction.text import CountVectorizer
    
    corpus = [
        'This is the first document.',
        'This is the second second document.',
        'And the third one.',
        'Is this the first document?',
    ]
    
    '''CountVectorizer是通过fit_transform函数将文本中的词语转换为词频矩阵
    get_feature_names()可看到所有文本的关键字
    vocabulary_可看到所有文本的关键字和其位置
    toarray()可看到词频矩阵的结果'''
    vectorizer = CountVectorizer()
    count = vectorizer.fit_transform(corpus)
    print(vectorizer.get_feature_names())  
    print(vectorizer.vocabulary_)
    print(count.toarray())
    print(count.toarray().shape)
    #词频矩阵:向量长度(横向每一行):所有关键字的数量(设为m)  数值:0/1数值==出现、未出现  纵向长度:文档数量
    #需要注意关键字又有自己的位置,所以文档中的某一句有m长,该句中某个位置上是关键字的会标注为1.
    
    ['and', 'document', 'first', 'is', 'one', 'second', 'the', 'third', 'this']
    {'this': 8, 'is': 3, 'the': 6, 'first': 2, 'document': 1, 'second': 5, 'and': 0, 'third': 7, 'one': 4}
    [[0 1 1 1 0 0 1 0 1]
     [0 1 0 1 0 2 1 0 1]
     [1 0 0 0 1 0 1 1 0]
     [0 1 1 1 0 0 1 0 1]]
    (4, 9)
     
     

     

     
  • 相关阅读:
    【算法】动态规划
    【设计模式】单例模式
    Python 多元线性回归
    Python 线性回归
    惩罚项
    局部常数拟合方法 例
    微分方程是用来做什么的?
    线性回归与梯度下降法
    k近邻法
    逻辑回归与梯度下降法
  • 原文地址:https://www.cnblogs.com/DHuifang004/p/11224763.html
Copyright © 2011-2022 走看看