值错误:输入数组应具有与目标数组相同的样本数。找到166个输入样本和4个目标样本

时间:2018-12-21 16:53:15

标签: python python-3.x deep-learning classification

我正在使用Keras DL库对图像数据集进行分类。尝试训练模型时遇到错误。

我正在处理的数据集没有大量数据,因此示例训练集中包含166张图像。我不确定该错误,但我认为必须以某种方式更改标签集的形状以修复该错误。这是代码:

 <xsl:for-each test="">
 <table>
  <tbody>
 <tr><td></td></tr>
 <xsl:if test="position() mod 35 = 0 ">

        <xsl:text disable-output-escaping="yes"><![CDATA[</tbody>]]></xsl:text>
        <xsl:text disable-output-escaping="yes"><![CDATA[</table>]]></xsl:text>
 </xsl:if>
</xsl:for-each>

2 个答案:

答案 0 :(得分:1)

在这里

  • 训练样本的数量不等于标签的数量。

  • 有144个训练样本,但只有4个标签。

  • 训练和测试数据的形状必须具有相同数量的样本。

  • Ex。训练数据的形状为( 100 , 256 , 256 , 1 )。测试数据的形状应为( 100 , 1 )

答案 1 :(得分:0)

这是我打电话给我时发生的事情

X_train, y_train, X_test, y_test = sklearn.model_selection.train_test_split(...)

代替

X_train, X_test, y_train, y_test = sklearn.model_selection.train_test_split(...)

(请注意,LHS上已切换了第二个和第三个变量。)

这导致我的数据和标签的长度不相等:

即len(X_train)!= len(y_train)和len(X_test)!= len(y_test)。