【问题标题】:How to Use CountVectorizer and TfidfTransformer on large data set(Train,Dev,Test)?如何在大型数据集(Train、Dev、Test)上使用 CountVectorizer 和 TfidfTransformer?
【发布时间】:2019-11-26 04:06:32
【问题描述】:

仅使用以下每个功能模板来实现 CountVectorizer 和 TfIdTransformer。我有训练、开发、测试数据。

这是我的样本火车数据:

Train_dataset = ['This is country of srilanka','This  was very much', ' hi bro how are you']

一个。仅表示具有二进制值的单词出现(​基线​)。
湾。删除停用词(这些是英语中最常见的词)。
C。表示词的词频。

【问题讨论】:

    标签: python-3.x machine-learning sentiment-analysis


    【解决方案1】:

    你需要做的,只是从你的 python 列表中创建一个数据框。
    然后使用具有所有 stopwords 语料库的 nltk 库创建一个自定义函数,如果您有一些不相关的标签,请删除并预处理您的数据。
    示例代码:

    stop = set(stopwords.words('english')) #set of stopwords
    Now you can check iterating over your data and remove the stopwords
    

    然后假设你已经清理了你的文本,就像下面的 count & tfidf 一样

    count_vect = CountVectorizer()
    X_train = count_vect.fit_transform(X_train_data['CleanedText'])
    X_test = count_vect.transform(X_test_data['CleanedText'])
    print(X_train.shape) 
    print(X_test.shape)
    

    注意:X_train、X_test 是经过 countvectorizer 变换后的向量器

    与 tfidf 相同,

    tf_idf_vect = TfidfVectorizer()
    X_train = tf_idf_vect.fit_transform(X_train_data['CleanedText'])
    X_test = tf_idf_vect.transform(X_test_data['CleanedText'])
    print(X_train.shape)
    print(X_test.shape)
    

    注意:X_train、X_test 是经过 tfidf vectorizer 变换后的 vectorizer

    更多你可以找到我的实现here


    我希望这会有所帮助...谢谢 :)

    【讨论】:

    • 嗨,我需要 TfIdTransformer。不是 TfidfVectorizer。
    • 它对 TfIdTransformer 也一样......更多你可以在这里阅读kavita-ganesan.com/…
    猜你喜欢
    • 2020-01-21
    • 2019-07-12
    • 2021-02-09
    • 1970-01-01
    • 2017-10-12
    • 1970-01-01
    • 2016-07-09
    • 2020-04-04
    • 2012-07-07
    相关资源
    最近更新 更多