美文网首页
ValueError: Input X must be non-

ValueError: Input X must be non-

作者: panjinya | 来源:发表于2020-01-15 16:21 被阅读0次

    这是使用word2vector + MultinomialNB训练时会出现的一个问题。
    由于word2vector对文本数据集进行处理后,向量中出现了负值,而MultinomialNB要求训练集中不出现负值
    参考文章:https://stats.stackexchange.com/questions/169400/naive-bayes-questions-continus-data-negative-data-and-multinomialnb-in-scikit

    MultinomialNB assumes that features have multinomial distribution which is a generalization of the binomial distribution. Neither binomial nor multinomial distributions can contain negative values.

    1. 如果不想继续对向量进行归一化之类的处理,那么可以考虑使用GaussianNB或其他分类算法;
    2. 如果还是想用MultinomialNB,那么可以尝试将数据归一化,可以使用preprocessing.MinMaxScaler来处理。参考文章:关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化,需要注意的是,在默认的(0,1)范围对数据进行缩放,可能预测的准确率会很低,那么可以通过下列方法来调优。要做好心理准备,即使调到最佳的范围,准确率也不一定高,_
    MinMaxScaler(feature_range=(0,10))  #自定义区间
    

    相关文章

      网友评论

          本文标题:ValueError: Input X must be non-

          本文链接:https://www.haomeiwen.com/subject/icbtzctx.html