我正在做目标导向的图像字幕。它有三种模式:提取特征、OCR分量和目标检测。从ResNeXt模型中提取的特征被重塑为一个大小的张量(49,2048)。OCR和对象检测组件的最大维数(300,1)分别为20字和10字。我想用线性投影将这些向量连接/嵌入到维数d=512的联合空间中。我该怎么做?
我使用了numpy.concatenate函数和axis=None,它将输出线性地连在一起,其维数为100652,但我想要输出(512,n),因为我必须将级联输出传递给解码器。
发布于 2022-03-27 18:44:49
用不同的concatenate说明axis
In [32]: alist = [np.ones((2,4),int)*i for i in range(1,4)]
In [33]: alist
Out[33]:
[array([[1, 1, 1, 1],
[1, 1, 1, 1]]),
array([[2, 2, 2, 2],
[2, 2, 2, 2]]),
array([[3, 3, 3, 3],
[3, 3, 3, 3]])]
In [34]: np.concatenate(alist,axis=0)
Out[34]:
array([[1, 1, 1, 1],
[1, 1, 1, 1],
[2, 2, 2, 2],
[2, 2, 2, 2],
[3, 3, 3, 3],
[3, 3, 3, 3]])
In [35]: np.concatenate(alist,axis=1)
Out[35]:
array([[1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3],
[1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3]])
In [36]: np.concatenate(alist,axis=None)
Out[36]:
array([1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3,
3, 3])这与你阅读文档时所期望的有什么不同吗?
https://stackoverflow.com/questions/71638950
复制相似问题