杭州市建设工程招标app关键词排名优化
在看了skip-gram乞丐版实战后按照自己的理解希望复现这个乞丐版,其中遇到了一些细节问题,记录下来避免以后再次踩坑
1.关于数据类型不正确
Runtime error: expected scalar type Double but found Float
出现这个报错的代码是:
pred = model(batch_x.to(device))
解决方法参考该博客,将代码改为
pred = model(batch_x.to(device).to(torch.float32))
成功
2.关于网络结构定义
定义线性部分的时候博文使用的是nn.Parameter,但我更喜欢用nn.Linear,故改写,改写后出现问题,无法直接将该隐藏层看作矩阵,实际上nn.Linear是一个映射,只需要将它作用在单位矩阵上即可将其转换为矩阵,也就是词编码矩阵了