我想设计一个卷积神经网络,它的输入和输出都是一个12×60的布尔矩阵,并且奖励与输出近似地与输出近似成正比(以非线性方式)。输入和一行中有多少输出列是等效的,并且与每列中有多少个非零以及有多少个不同的列成反比。我要使用的特定损失函数很复杂且需要手工定制,但这是我正在考虑的四个要素。
我了解如何计算每列中的列数,不同列的数目以及给定输出列与给定输入列的匹配程度。我遇到的问题是:我想对输出矩阵进行分区,以使连续的相等列配对在一起-例如,如果为了简单起见将其设为一维,则输出为[0 0 0 1 1 0 1 0] ,我想将其分区为[[0 0 0] [1 1] [0] [1] [0]]。然后,我想计算和汇总每个索引的开始索引 i 和结束索引 j 的各个分数,这取决于它们对输入列的近似程度i 到输入矩阵的 j 以及其长度( j-i )。
有没有办法在pytorch中做到这一点?