近期问题小结
在AFP的Graph项目上碰到的问题小结
Pytorch相关
- 如何进行多输入的模型构建,以双塔模型为例
- GITHUB 参考代码 以及 某BLOG
- 仅供参考,需要改进
- 导入模型之前,数据需要转换为torch.tensor。不能是numpy数组
- 在构建torch模型的时候,需要注意传入数据的类型,一般要改成float32,aka float。传入数据类型需要和模型中参数类型一致
- cosine_similarity函数需要传入多维tensor。一维的tensor会报错,需要修改为[1,-1]。cosine_similariry的两个tensor,其中一个可以是行向量,另一个可以是多行向量。比如,[1,128]和[100,128],返回100维的cosine_similariry。
- torch改变tensor的维度,可以使用reshape或者view。二者区别见博客。建议使用reshape
- torch.utils.data和torch.utils.data.Dataloader用于batch计算。如果模型是只有nn.Module堆叠的情况,一般不需要对模型进行修正。如果模型有一些自定义层和自定义计算步骤,需要对其shape进行修改。尤其需