【问题标题】:Bag of Words - Add feature manually词袋 - 手动添加功能
【发布时间】:2018-06-07 16:16:13
【问题描述】:

我正在尝试改进我的文本分类模型。

text = df['text']
count_vect = CountVectorizer(min_df=1,ngram_range=(1, 2), 
stop_words="english", max_features=200)
count_vect.fit(text)
counts = count_vect.transform(text)

这是示例输出:

[(u'spring', 386), (u'https', 341), (u'com', 317), (u'pr', 313), (u'for 
the', 285), (u'the pr', 208), (u'need', 196), (u'session', 164), 
(u'jp', 158), (u'png', 156), (u'updated', 154), (u'please', 152), 
(u'see', 145)]

我想手动添加单词/频率,我认为这可能是一个很好的指标。 有什么帮助吗?

【问题讨论】:

  • 计数是频率。您是否在将计数值添加为设计矩阵中的特征时寻求帮助?或者您是否要求对您列出的频率进行某种转换?另外,“单词”是指您在counts 中列出的一元和二元,还是仅指一元?
  • 是的。我正在寻求有关将计数值添加为功能的帮助。我的意思只是一元组。
  • 只需将这些 un​​igrams 以任何所需时间的顺序添加到文本的末尾(比如说,称之为featured_text)。您可以创建一个特殊的功能。 CountVectorizer 没有意义顺序,所以,没关系。可能不是最好的解决方案,但它可以工作。

标签: python scikit-learn nlp


【解决方案1】:

这样的?

total = sum([x[1] for x in counts])
frequencies = [(x[0], x[1]/total) for x in counts]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-17
    • 2019-06-08
    • 1970-01-01
    • 2016-09-27
    • 1970-01-01
    • 2013-10-26
    • 2019-10-12
    • 2011-02-20
    相关资源
    最近更新 更多