我试图用Python创建一个简单的神经元网络(我知道有库,但我正在从头开始构建一个简单的,以便更熟悉所采取的每一步),其中一部分是计算真实标签和预测标签之间的差异。在
“真实”标签的尺寸为“2059 x 1”>;,预测的标签也在“2059 x 1”>
两者都在np.数组在
我希望一个简单的
l2_error=tag_train-l2
会完成任务的。(l2为预测标签,tag_train为真实标签)
但我得到的回报是一个2059x2059的矩阵。似乎这个操作是对所有可能的元素组合进行减法。为什么会这样?我知道我可以运行一个for
循环来完成这项工作,因为我想知道为什么程序会产生这个结果?在
两个数据类型都是float64,顺便说一句。我不认为这有什么关系,但只是为了以防万一需要这些信息。在
正如您在注释中所指出的那样,}应该是一个包含2059行和1列的二维数组。在
tag_train
是一个长度为2059的一维数组,而{所以当你尝试做减法时,它会得到一个包含2059行和2059列的二维数组。在
如果您100%确定l2只会是一列,那么您可以在执行减法之前重塑该数组,使其成为一维数组。就像-
示例/演示-
^{pr2}$相关问题 更多 >
编程相关推荐