【问题标题】:ValueError: Found input variables with inconsistent numbers of samples : [1, 14048]ValueError:发现样本数量不一致的输入变量:[1, 14048]
【发布时间】:2017-06-30 22:18:00
【问题描述】:

我正在尝试运行 MultinomiaL Naive bayes 并收到以下错误。给出了样本训练数据。测试数据完全相同。

def main():
    text_train, targets_train = read_data('train')
    text_test, targets_test = read_data('test')
    classifier1 = MultinomialNB()
    classifier1.fit(text_train, targets_train)
    prediction1 = classifier1.predict(text_test)

样本数据:

Train: 
category, text
Family, I love you Mom
University, I hate this course

【问题讨论】:

  • 您的text_traintargets_train 的形状是什么?我也不认为 MultinomialNB 默认会处理文本数据。您需要对其进行预处理。

标签: machine-learning scikit-learn naivebayes multinomial


【解决方案1】:

有时我遇到这个问题并从错误中发现大部分原因是输入数据应该是二维数组,例如如果你想建立一个回归模型。你写了这段代码,然后你就会遇到这个错误!

例如:

a = np.array([1,2,3]).T
b = np.array([4,5,6]).T

regr = linear_model.LinearRegression()
regr.fit(a, b)

那么你应该添加一些东西!

a = np.array([[1,2,3]]).T
b = np.array([[4,5,6]]).T

终于可以正常运行了! 所以这只是我的经验! 这只是一个参考,不是标准答案! 我来自中国作为一名学习英语和python的学生!

【讨论】:

  • a = np.array([[1,2,3]]).T b = np.array([4,5,6]).T 输入应该是二维的跨度>
猜你喜欢
  • 2022-01-16
  • 2021-07-29
  • 2020-11-15
  • 2021-10-09
  • 2020-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-27
相关资源
最近更新 更多